International Olympiad in Informatics 2013. Ο μικρός αδελφός της Μαρίας έχει αφήσει τα παιγνίδια του σκορπισμένα στο πάτωμα του καθιστικού του.



Σχετικά έγγραφα
International Olympiad in Informatics th July 2014 Taipei, Taiwan Day-2 tasks

Συναρτήσεις. Εισαγωγή

Πρόγραμμα όρασης. Στη συνέχεια θα περιγράψουμε πώς δουλεύει το ρομπότ.

Η αφετηρία είναι η συσκευή στην οποία η μπάλα βρίσκεται αρχικά. Έχει μόνο μία έξοδο. Ο σειριακός αριθμός της είναι.

Highway Tolls. Λεπτομέρειες υλοποίησης. highway

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C

Προγραμματισμός ΙI (Θ)

Αποτελέσματα προόδου

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

ΘΕΜΑΤΑ ΤΕΛΙΚΗΣ ΦΑΣΗΣ

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Κεφάλαιο 6: Συναρτήσεις IΙΙ Αρθρωτός Προγραμματισμός. (Διάλεξη 14) Παράδειγμα: Αλλαγή τιμής μεταβλητής μόνο τοπικά

Κεφάλαιο 7: Υπορουτίνες

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

The 38 th International Physics Olympiad Iran Theory Competition Sunday, 15 July 2007

Προγραμματισμό για ΗΜΥ

Ηλεκτρονικοί Υπολογιστές

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014

Εισαγωγή στην πληροφορική

S, (5, -3, 34, -23, 7) ( *, _

Ασκηή σεις 12ο Μαά θημα - Λυύ σεις

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"

The 38 th International Physics Olympiad Iran Theory Competition Sunday, 15 July 2007

ΕΝΟΤΗΤΑ 3 ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Επαναληπτικές Ασκήσεις στα Σύνολα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

The 38 th International Physics Olympiad Iran Theory Competition Sunday, 15 July 2007

1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ

Μεθόδων Επίλυσης Προβλημάτων

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Λογισµικό (Software SW) Γλώσσες

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων

ΠΡΟΓΡΑΜΜΑ synartisi_se_diadikasia ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: A[10], max, i, C, S, B, maxmax ΑΡΧΗ

Κεφάλαιο 6: Συναρτήσεις IΙΙ Αρθρωτός Προγραμματισμός. Δείκτες (Διάλεξη 14)

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) a= b= c= 3 read(d,e)

Μεταβλητές. Έστω η μεταβλητή

ΠΠΜ 501: Προχωρημένη Ανάλυση Κατασκευών με Η/Υ

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 4η Διάλεξη Πίνακες Συναρτήσεις

Δομημένος Προγραμματισμός (ΤΛ1006)

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι χρειάζεται η εντολή if ; Εντολή if. Παράδειγμα #1. Παράδειγμα #1

Προγραμματισμός Η/Υ (ΤΛ2007 )

Φροντιστήριο 8 Φύλλο Ασκήσεων UPPAAL 2

ΑΣΚΗΣΗ 5: ΠΙΝΑΚΕΣ. Σχήµα 1: H έννοια των πινάκων

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσμία: Τετάρτη 23/11/2016, 21:00

ΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική. Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η

Μαρία Λουκά. Εργαστήριο Matlab. Αριθμητικός υπολογισμός ιδιοτιμών και ιδιοδιανυσμάτων. Τμήμα Πληροφορικής και Τηλεπικοινωνιών.

,,,,.,.,.,.,,..,.,,.,,.,,,,,,.

Δύο είναι οι κύριες αιτίες που μπορούμε να πάρουμε από τον υπολογιστή λανθασμένα αποτελέσματα εξαιτίας των σφαλμάτων στρογγυλοποίησης:

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Q 40 th International Physics Olympiad, Merida, Mexico, July 2009

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

ΔΥΝΑΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

Διδάσκων: Παναγιώτης Ανδρέου

Δομημένος Προγραμματισμός

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΕΦΑΛΑΙΟ 1

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 2 η

Ανάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου

Διάλεξη 9η: Πίνακες (arrays)

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

#include <stdlib.h> Α. [-128,127] Β. [-127,128] Γ. [-128,128]

Προβλήµατα Μεταφορών (Transportation)

Συναρτήσεις. Υποπρόγραμμα

Τμήμα Τεχνολόγων Γεωπόνων-Κατεύθυνση Αγροτικής Οικονομίας Μαθηματικά για Οικονομολόγους 2 ο Μάθημα: Σύνολα αριθμών-συναρτήσεις Διδάσκουσα:

Εισαγωγή στους πίνακες

ΘΕΜΑΤΑ ΤΕΛΙΚΗΣ ΦΑΣΗΣ

Προγραμματισμός ΙI (Θ)

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης

Θεωρήστε ένα puzzle (παιχνίδι σπαζοκεφαλιάς) με την ακόλουθη αρχική διαμόρφωση : b b b w w w e

Προγραμματιστικές Ασκήσεις, Φυλλάδιο 1

Αριθμήσιμα σύνολα. Μαθηματικά Πληροφορικής 5ο Μάθημα. Παραδείγματα αριθμήσιμων συνόλων. Οι ρητοί αριθμοί

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD)

Δομές Δεδομένων. Ενότητα 3: Ουρές Εισαγωγή-Υλοποίηση ΑΤΔ Ουρά με πίνακα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 7 Ο. Αριθμητικές πράξεις Τυχαίοι αριθμοί Εφαρμογές σε προβλήματα ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Δομές Δεδομένων. Ιωάννης Γ. Τόλλης Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης

Φυσική Β Γυμνασίου - Κεφάλαιο 2: Κινήσεις ΚΕΦΑΛΑΙΟ 2: ΚΙΝΗΣΕΙΣ. Φυσική Β Γυμνασίου

Εισαγωγή στον δομημένο προγραμματισμό

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Διακριτά Μαθηματικά. Απαρίθμηση: Διωνυμικοί συντελεστές

ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β

Αναδρομή (Recursion) Πώς να λύσουμε ένα πρόβλημα κάνοντας λίγη δουλειά και ανάγοντας το υπόλοιπο να λυθεί με τον ίδιο τρόπο.

ιαφάνειες παρουσίασης #5 (β)

Δομές Δεδομένων & Αλγόριθμοι

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( )

Δομημένος Προγραμματισμός

Transcript:

International Olympiad in Informatics 2013 6-13 July 2013 Brisbane, Australia Day 2 tasks robots Greek 1.0 Ο μικρός αδελφός της Μαρίας έχει αφήσει τα παιγνίδια του σκορπισμένα στο πάτωμα του καθιστικού του. Ευτυχώς η Μαρία έχει κατασκευάσει κάποια ειδικά ρομπότ για να καθαρίσουν τα παιχνίδια. Χρειάζεται όμως την βοήθειά σου, για να καθορίσει πιο ρομπότ θα μαζέψει ποια παιχνίδια. Υπάρχουν T παιχνίδια, που το κάθε ένα έχει βάρος που συμβολίζεται από τον ακέραιο W[i] και μέγεθος που συμβολίζεται από τον ακέραιο S[i]. Τα ρομπότ είναι δύο ειδών: αδύναμα και μικρά. Υπάρχουν A αδύναμα ρομπότ. Το κάθε αδύναμο ρομπότ μπορεί να σηκώσει βάρος μέχρι το όριο X[i], και μπορεί να μεταφέρει οποιοδήποτε παιχνίδι βάρους σίγουρα μικρότερο από X[i]. Το μέγεθος του παιχνιδιού δεν παίζει κανένα ρόλο. Υπάρχουν B μικρά ρομπότ. Κάθε μικρό ρομπότ μπορεί να σηκώσει μέγεθος μέχρι το όριο Y[i], και μπορεί να μεταφέρει οποιοδήποτε παιχνίδι μεγεθους σίγουρα μικρότερο από Y[i]. Το βάρος του παιχνιδιού δεν παίζει κανένα ρόλο. Κάθε ένα από τα ρομπότ χρειάζεται ένα λεπτό για να απομακρύνει ένα παιχνίδι. Διαφορετικά ρομπότ μπορούν να απομακρύνουν διαφορετικά παιχνίδια ταυτόχρονα. Το πρόβλημα σας είναι να προσδιορίσετε κατά πόσο τα ρομπότ της Μαρίας μπορούν να απομακρύνουν όλα τα παιχνίδια και αν ναι, ποιος είναι ο συντομότερος χρόνος που μπορούν να το κάνουν αυτό. Παραδείγματα Σαν πρώτο παράδειγμα, υποθέστε ότι υπάρχουν A = 3 αδύναμα ρομπότ που μπορούν να μεταφέρουν βάρος κάτω από τα όρια X = [6, 2, 9], B = 2 μικρά ρομπότ με όρια μεγέθους κάτω από Y = [4, 7], και T = 10 παιχνίδια όπως φαίνεται παρακάτω: Αριθμός παιχνιδιού 0 1 2 3 4 5 6 7 8 9 Βάρος 4 8 2 7 1 5 3 8 7 10 Μέγεθος 6 5 3 9 8 1 3 7 6 5 Ο συντομότερος χρόνος για να απομακρυθούν όλα τα παιχνίδια είναι 3 λεπτά: https://translate.ioi2013.org/day2/w/robots/el 1/7

1ο Λεπτό 2ο Λεπτό 3ο Λεπτό Αδύναμο ρομπότ 0 Αδύναμο ρομπότ 1 Αδύναμο ρομπότ 2 Μικρό ρομπότ 0 Toy 0 Toy 4 Toy 1 Toy 6 Toy 2 Toy 5 Toy 3 Toy 8 Toy 7 Toy 9 Μικρό ρομπότ 1 https://translate.ioi2013.org/day2/w/robots/el 2/7

Σαν δεύτερο παράδειγμα, υποθέστε ότι υπάρχουν A = 2 αδύναμα ρομπότ που μπορούν να μεταφέρουν βάρος κάτω από τα όρια X = [2, 5], B = 1 μικρά ρομπότ που μπορούν να μεταφέρουν μεγεθος κάτω από τα όρια Y = [2], και T = 3 παιχνίδια όπως φαίνεται παρακάτω: Αριθμός Παιχνιδιού 0 1 2 Βάρος 3 5 2 Μέγεθος 1 3 2 Κανένα από τα ρομπότ δεν μπορεί να μεταφέρει παιχνίδι με βάρος 5 και μέγεθος 3, και έτσι είναι αδύνατο για τα ρομπότ να απομακρύνουν όλα τα παιχνίδια. Υλοποίηση Πρέπει να υποβάλλετε ένα αρχείο που να υλοποιεί την συνάρτηση putaway() ώς εξής: Η συνάρτηση: putaway() C/C++ Pascal int putaway(int A, int B, int T, int X[], int Y[], int W[], int S[]); function putaway(a, B, T : LongInt; var X, Y, W, S : array of LongInt) : LongInt; Περιγραφή Αυτή η συνάρτηση θα πρέπει να υπολογίζει τον ελάχιστο αριθμό λεπτών που απαιτούνται για τα ρομπότ να απομακρύνουν όλα τα παιχνίδια, ή να επιστρέψει -1 αν αυτό δεν είναι δυνατό. Παράμετροι A: Ο αριθμός των αδύναμων ρομπότ. B: Ο αριθμός των μικρών ρομπότ. T: Ο αριθμός των παιχνιδιών. X: Πίνακας μήκους A που περιέχει ακεραίους οι οποίοι προσδιορίζουν το όριο του βάρους για κάθε ένα από τα αδύναμα ρομπότ. Y: Πίνακας μήκους B που περιέχει ακεραίους οι οποίοι προσδιορίζουν το όριο του μεγεθους για κάθε ένα από τα μικρά ρομπότ. W: Πίνακας μήκους T που περιέχει ακεραίους που δίνουν το βάρος του κάθε παιχνιδιού. https://translate.ioi2013.org/day2/w/robots/el 3/7

S: Πίνακας μήκους T που περιέχει ακέραιους που δίνουν το μέγεθος κάθε παιχνιδιού. Επιστρέφει: Τον μικρότερο αριθμό σε λεπτά που απαιτούνται για να απομακρυνθούν όλα τα παιχνίδια, ή -1 έαν αυτό δεν είναι εφικτό. https://translate.ioi2013.org/day2/w/robots/el 4/7

Παράδειγμα Το παρακάτω περιγράφει το πρώτο από τα παραπάνω παραδείγματα: Παράμετρος Τιμή A 3 B 2 T 10 X [6, 2, 9] Y [4, 7] W [4, 8, 2, 7, 1, 5, 3, 8, 7, 10] S [6, 5, 3, 9, 8, 1, 3, 7, 6, 5] Επιστρέφει 3 Το παρακάτω περιγράφει το δεύτερο από τα παραπάνω παραδείγματα: Παράμετροι Τιμές A 2 B 1 T 3 X [2, 5] Y [2] W [3, 5, 2] S [1, 3, 2] Επιστρέφει -1 Περιορισμοί Οριο Χρόνου: 3 δευτερόλεπτα Οριο Μνήμης: 64 MiB (Megabyte) 1 T 1,000,000 0 A, B 50,000 and 1 A + B 1 X[i], Y[i], W[i], S[i] 2,000,000,000 https://translate.ioi2013.org/day2/w/robots/el 5/7

Υποπροβλήματα Υποπροβλήματα Βαθμοί Επιπλέον Περιορισμοί κατά την εισαγωγή 1 14 T = 2 and A + B = 2 (ακριβώς 2 παιχνίδια και 2 ρομπότ) 2 14 B = 0 (όλα τα ρομπότ είναι αδύναμα) 3 25 T 50 και A + B 50 4 37 T 10,000 και A + B 1,000 5 10 (Κανένα) Πειραματισμός Το πρόγραμμα αξιολόγησης (grader) στον υπολογιστή σας θα πάρει εισαγωγή από το αρχείο robots.in, Το οποίο πρέπει να έχει την ακόλουθη μορφή: γραμμή 1: A B T γραμμή 2: X[0] X[A-1] γραμμή 3: Y[0] Y[B-1] επόμενες T γραμμές: W[i] S[i] Έτσι, το πρώτο παράδειγμα θα πρέπει να παράξει την παρακάτω έξοδο (output) : 3 2 10 6 2 9 4 7 4 6 8 5 2 3 7 9 1 8 5 1 3 3 8 7 7 6 10 5 Εάν A = 0 ή B = 0 τότε η αντίστοιχη γραμμή (γραμμή 2 ή γραμμή 3) πρέπει να είναι κενή. https://translate.ioi2013.org/day2/w/robots/el 6/7

Οδηγίες για τη γλώσσα C/C++ Pascal Στον κώδικα χρησιμοπιείστε την οδηγία #include "robots.h". Στον κώδικα θα πρέπει να οριστεί unit Robots. Η αρίθμηση των στοιχείων των πινάκων ξεκινά από 0 (και όχι 1). See the solution templates on your machine for examples. https://translate.ioi2013.org/day2/w/robots/el 7/7