Skip to content

Ο Καλλίνικος είναι μία πλατφόρμα εκμάθησης αλγορίθμων για διαγωνισμούς πληροφορικής.

License

Notifications You must be signed in to change notification settings

MakerlabGR/kallinikos.github.io

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Καλλίνικος

Ο Καλλίνικος είναι μια πλατφόρμα με αλγορίθμους η οποία δημιουργήθηκε με σκοπό την διευκόλυνση της εξάσκησης των ελληνόγλωσσων μαθητών για τις εθνικές και διεθνείς ολυμπιάδες πληροφορικής. Είναι ανοιχτού κώδικα και λειτουργεί σαν wiki, καθώς όλοι μπορούν να συνεισφέρουν στην εμπλούτισή του μέσω του Github.

Συνεισφέρετε

Για να συνεισφέρετε, απλά κάνετε fork το repository αυτό μέσω του github, και μετά ακολουθήστε τις οδηγίες εδώ για να ανεβάσετε υλικό. Αφού ανεβάσετε υλικό, απλά κάνετε ένα pull request, και όταν εγκριθεί, θα ανέβει στην ιστοσελίδα.

Άρθρα

Για να ανεβάσετε μία απλή σελίδα, δημιουργήστε ένα αρχείο στη γλώσσα markdown και τοποθετήστε το στον υποφάκελο _posts, με όνομα την ημερομηνία δημιουργίας χωρισμένη με παύλες και μετά τον τίτλο του άρθρου σας (για παράδειγμα 2046-10-25-Πώς-να-κατακτήσετε-τον-κόσμο.md). Ο τίτλος μπορεί να περιέχει κενά, αλλά αποφεύγεται. Το αρχείο αυτό θα πρέπει να έχει κάποιες πληροφορίες αποθηκευμένες με τη μορφή YAML front matter. Για να τις περάσετε, απλά χρησιμοποιήστε το αρχείο templates/post.md σαν οδηγό. Το αρχείο περιέχει τα εξής:

---
title: "ΤΙΤΛΟΣ"
layout: post
tags: [ΚΑΤΗΓΟΡΙΕΣ]
category: ΒΑΘΜΟΣ ΔΥΣΚΟΛΙΑΣ
comments: true
---

ΠΕΡΙΕΧΟΜΕΝΟ

* TOC
{:toc}

ΠΕΡΙΕΧΟΜΕΝΟ

Θα αντικαταστήσετε τον τίτλο, τις κατηγορίες, τον βαθμό δυσκολίας, και το περιεχόμενο. Ο τίτλος πρέπει να είναι σε ομοιωματικά, οι κατηγορίες χωρισμένες με κόμματα, και ο βαθμός δυσκολίας πρέπει να είναι ένας αριθμός από το 1 μέχρι το 10. Στο περιεχόμενο, οι παράγραφοι πρέπει να αρχίζουν από το δεύτερο επίπεδο, διότι ο τίτλος θα μπει στο πρώτο επίπεδο. Εάν θέλετε να απενεργοποιήσετε τα σχόλια θέστε την παράμετρο comments σε false. Για παράδειγμα:

---
title: "Πώς να κατακτήσετε τον κόσμο"
layout: post
tags: [Σατανικά σχέδια, Δικτατορία]
category: 3
comments: true
---

Πολλοί μπορεί να πουν ότι η κατάκτηση του κόσμου δεν είναι εύκολη. Όμως, με αυτόν τον οδηγό, θα καταφέρετε σύντομα να γίνετε ο/η απόλυτος/η κυρίαρχος του κόσμου.

* TOC
{:toc}

## Προετοιμασία

Για να κατακτήσετε τον κόσμο πρέπει πρώτα να κατακτήσετε τον εαυτό σας.

Όλα τα υπόλοιπα θα γίνουν αυτόματα, όπως η δημιουργία της σελίδας και η προσθήκη της στην αρχική.

Ένας καλός οδηγός για τη γλώσσα Markdown βρίσκεται εδώ. Να σημειωθεί ότι το github χρησιμοποιεί μια ελαφρώς εμπλουτισμένη έκδοση της Markdown, την οποία μπορείτε να βρείτε εδώ. Για να γράψετε markdown μπορείτε να χρησιμοποιήσετε αυτήν την ιστοσελίδα, ή το πρόγραμμα typora.

Αναφέρουμε ότι οι τίτλοι ξεκινούν από τη δεύτερη κατηγορία (δηλαδή χρησιμοποιούμε ## αντί για #) και είναι απαραίτητη η ύπαρξη κενού ανάμεσα στις διέσεις και στον τίτλο. Για εισαγωγή μαθηματικών χρησιμοποιούμε διπλό δολάριο (δηλαδή $$a<b$$ και όχι $a<b$). Τέλος, για να δημιουργήσετε εσωτερικό σύνδεσμο, η σύνταξη είναι: [τίτλος]({% post_url όνομα-αρχείου%}) όπου το όνομα-αρχείου είναι το όνομα του αρχείου του post χωρίς την κατάληξη md.

Σημείωση: Εάν δεν λειτουργεί η φυσιολογική εισαγωγή κώδικα του markdown, αντικαταστήστε την με την εισαγωγή του Jekyll. Για παράδειγμα, ο εξής κώδικας:

​```c++
#include <stdio.h>
int main() {
    printf("Hello World!");
    return 0;
}
​```

θα γίνει:

{% highlight c++ %}
#include <stdio.h>
int main() {
    printf("Hello World!");
    return 0;
}
{% endhighlight}

Σελίδες ανακατεύθυνσης

Για να δημιουργήσετε μια σελίδα ανακατεύθυνσης χρησιμοποιήστε το αρχείο templates/redirect.md. Αφού συμπληρώσετε τα στοιχεία όπως σε ένα απλό άρθρο, αντικαταστήστε τη λέξη ΠΡΟΟΡΙΣΜΟΣ (και τις δύο φορές που εμφανίζεται), με την σελίδα στην οποία θέλετε να ανακατευθύνετε.

Τοπική εγκατάσταση

Για να ελέγξετε την μορφοποίηση του άρθρου σας τοπικά, σας συστήνουμε να εγκαταστήσετε το jekyll. Οι οδηγίες εγκατάστασης βρίσκονται εδώ και οι οδηγίες χρήσης εδώ (συγκεκριμένα η εντολή jekyll serve --livereload είναι η πιο χρήσιμη).

Γενικές συμβουλές

Πριν ανεβάσετε αλλαγές, σας συστήνουμε να κάνετε ορθογραφικό έλεγχο του κειμένου σας. Δυστυχώς, το typora δεν παρέχει ακόμα τη δυνατότητα ορθογραφικού ελέγχου στα ελληνικά. Αντίστοιχα, προσπαθήστε να κάνετε έλεγχο του κώδικά σας για να είναι όσο το δυνατόν σωστός (στην καλύτερη περίπτωση υποβάλετέ τον σε ένα σχετικό πρόβλημα σε κάποιο judge).

Για να δημιουργήσετε γραφήματα, το συστηνόμενο πρόγραμμα είναι το inkscape. Παρόλο που στην αρχή μπορεί να μην φαίνεται εύχρηστο, είναι ιδιαίτερα ευέλικτο για τη χρήση μας, και παράγει εικόνες svg (Scalable Vector Graphics) που έχουν εξαιρετική ανάλυση.

Για να βρείτε τους κώδικες μαθηματικών συμβόλων (inline latex mathmode) εξαιρετική βοήθεια αποτελεί το detextify.

TODO

Ακολουθεί μια ενδεικτική λίστα άρθρων που θέλουμε να προσθέσουμε στο σύντομο μέλλον. Εάν θέλετε να συνεισφέρετε μπορείτε να γράψετε κάτι από τα παρακάτω.

  • Θεωρία γράφων
    • Dfs, Bfs, Strongly Connected Components
    • Dijkstra
    • Bellman-Ford, Floyd-Warshall
    • Kruskal, Prim
    • Lowest Common Ancestor
  • Δομές δεδομένων
    • Segment Tree
    • Trie
    • Sqrt(n) bucketing
  • Αλφαριθμητικά
    • Z algorithm
    • Rabin-Karp

About

Ο Καλλίνικος είναι μία πλατφόρμα εκμάθησης αλγορίθμων για διαγωνισμούς πληροφορικής.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 51.7%
  • HTML 34.4%
  • JavaScript 13.9%