Σημαντικές οδηγίες
Τι πρέπει να προσέχει κανείς στα προγράμματά του
- Τα προγράμματα που θα στέλνετε, θα πρέπει να είναι γραμμένα σε
C, C++,Fortran 77 ή Pascal.
- Θα πρέπει να δέχονται τα δεδομένα από το standard input και
να έχουν έξοδο στο standard output. Σε γλώσσα Pascal (turbo)
να μην χρησιμοποιείται η βιβλιοθήκη CRT, γιατί αντιβαίνει
στον παραπάνω κανόνα.
- Δεν πρέπει τα προγράμματα με κανένα
τρόπο να χρησιμοποιούν ενδιάμεσα ή προσωρινά αρχεία.
Αποστολή προγραμμάτων για έλεγχο
Τα προγράμματα πρέπει να στέλνονται με ΑΠΛΟ mail, (όχι attachments)
και μόνο αυτά στη διεύθυνση
judge@softlab.ece.ntua.gr. Το subject του mail έχει
ειδική μορφή για να δίνει τις απαραίτητες πληροφορίες.
Συγκεκριμένα, πρέπει να είναι της μορφής:
problemid:id language:c email:me@there.com teamid:ntua1 password:secret
Το problemid δίνεται στην εκφώνηση του κάθε προβλήματος.
Η γλώσσα προγραμματισμού μπορεί να είναι: "c", "cc" ή "cpp"
, "pascal" η "f77". To teamid φαίνεται στη σελίδα
http://www.softlab.ntua.gr/~akav/acm/greece_98/registrations_public.html.
Το password, θα πρέπει να το στείλει αρχικά η κάθε ομάδα στη
διεύθυνση
judge@softlab.ece.ntua.gr και
πρέπει να περιέχει μόνο λατινικούς χαρακτήρες και/ή αριθμούς.
Για unix συστήματα, υπάρχει το script submit
που κάνει έυκολη την αποστολή. Είναι γραμμένο σε csh και
χρησιμοποιεί το πρόγραμμα fastmail (έρχεται μαζί με το elm)
ή το Mail.
Έλεγχος προγραμμάτων και βαθμολόγηση.
- Αμέσως μετά την αποστολή ενός προγράμματος, θα λαμβάνετε αυτόματα
μια επιβεβαίωση ότι το πρόγραμμα ελήφθη. Από εκει και πέρα
αρχίζει η διαδικασία του ελέγχου. Μόλις τελειώσει ο έλεγχος
στέλνεται η τελική απάντηση.
- H τελική απάντηση μπορεί να είναι:
- 0. Σωστή απάντηση
- 1. Λάθος στη μετταγλώττιση. Προσοχή να μην χρησιμοποιείτε
features που είναι specific στους compilers που
χρησιμοποιείτε και δεν ειναι standard. Έχετε υπόψη
σας ότι τα προγράμματα θα ελεγχθούν σε 32-bit unix.
- 2. Run-time error. Το πρόγραμμα τελειώνει "ανώμαλα".
Προσοχή γιατί μπορεί να δοκιμαστούν τα προγράμματα
με "πονηρά" ή αρκετά μεγάλα inputs.
- 3. Τέλος χρονικού ορίου. Μια σωστή λύση ενός προβλήματος,
θα πρέπει να είναι ένα πρόγραμμα που τελειώνει σε
λίγα δευτερόλεπτα, για οποιαδήποτε είσοδο μέσα
στα όρια της εισόδου που δίνονται. Φτιάξτε πιο αποδοτική
λύση!
- 4. Λάθος απάντηση. Το πρόγραμμα δεν βγάζει σωστά αποτελέσματα.
- 5. Λάθος παρουσίασης. Το πρόγραμμα φαίνεται να βγάζει
σωστά αποτελέσματα, αλλά δεν είναι στην ακριβή
μορφή που ορίζει η εκφώνηση του πρόβλήματος.
- Οι ομάδες ταξινομούνται ανάλογα με τον αριθμό των θεμάτων που
θα λύσουν. Μεταξύ ομάδων που έχουν λύσει ίδιο αριθμό
προβλημάτων, θεωρείται καλύτερη αυτή που έχει τον καλύτερο
χρόνο. Ο χρόνος κάθε προβλήματος μετράται από την αρχή του
διαγωνισμού μέχρι τη λύση του προβλήματος. Το άθροισμα των
χρόνων για την επίλυση του κάθε προβλήματος (σε λεπτά) είναι
ο συνολικός χρόνος της ομάδας. ΠΡΟΣΟΧΗ! Για κάθε πρόγραμμα
που αποστέλεται και ΔΕΝ είναι απόλυτα σωστό, "χρεώνονται"
5 λεπτά χρόνου ποινής. ΟΜΩΣ! πρόβληματα που δεν επιλύονται
μέχρι το τέλος του διαγωνισμού, δεν λαμβάνονται καθόλου υπόψη
(ούτε οι βαθμοί ποινής τους).