22ος ΠΔΠ Γ’ Φάση
Lines man (lines_man)

[25 Μονάδες]

Το ποδόσφαιρο από την ανακάλυψή του στο Πανεπιστήμιο του Cambridge, έγινε το πιο δημοφιλές αλλά και το πιο εύκολα παιζόμενο άθλημα. Ένας σχετικά επίπεδος τόπος και μια μπάλα αρκούν. Σύμφωνα με τους κανόνες του, ο διαιτητής κινείται μέσα στο γήπεδο και οι επόπτες γραμμών κατά μήκος των πλευρικών γραμμών, στο μισό γηπέδου έκαστος. Aν το γήπεδο ποδοσφαίρου έχει μήκος A, οι δύο επόπτες γραμμών ξεκινούν από το κέντρο του γηπέδου (A/2). Mέσα στο γήπεδο η μπάλα κινείται σε διάφορα σημεία. Οι επόπτες πρέπει να παρακολουθούν τις φάσεις, κινούμενοι μόνο κατά μήκος των πλευρικών γραμμών από το 0 έως A/2 και από A/2  έως A αντίστοιχα.

Πρόβλημα

Να αναπτύξετε ένα πρόγραμμα σε μια από τις γλώσσες του ΙΟΙ το οποίο: Aφού διαβάσει το μήκος του γηπέδου, τον αριθμό των φάσεων και τη θέση (μήκος) που συντελείται κάθε φάση, θα υπολογίζει τα μέτρα που διάνυσαν οι επόπτες γραμμών κατά τη διάρκεια ενός αγώνα.

Παρατήρηση: Οι επόπτες ξεκινούν από το κέντρο αλλά δεν επιστρέφουν υποχρεωτικά σε αυτό στο τέλος του παιχνιδιού.

Aρχεία εισόδου

Τα αρχεία εισόδου με όνομα lines_man.in είναι αρχεία κειμένου με την εξής δομή: Στην πρώτη γραμμή έχουν έναν άρτιο ακέραιο αριθμό A (10≤A≤1.000): το μήκος του γηπέδου. Στη δεύτερη γραμμή έχουν έναν ακέραιο αριθμό M (10≤M≤100.000): το πλήθος των φάσεων. Οι επόμενες M γραμμές περιέχουν από ένα ακέραιο αριθμό Y (0≤Y≤A): το μήκος του γηπέδου επί του οποίου εξελίσσεται η αντίστοιχη φάση.

Aρχεία εξόδου

Τα αρχεία εξόδου με το όνομα lines_man.out είναι αρχεία κειμένου με την εξής δομή. Έχουν μία γραμμή με ακριβώς δύο αριθμούς, L1 και L2  (0≤L1, L2≤10.000.000): τη συνολική απόσταση που διέτρεξε κάθε επόπτης γραμμών. Ο πρώτος κινείται από 0 έως A/2 και ο δεύτερος κινείται από A/2  έως A.

Παράδειγμα αρχείων εισόδου – εξόδου

lines_man.in lines_man.out
100
10
49
30
25
0
50
55
40
30
20
0
150 10

Παράδειγμα

Εξήγηση παραδείγματος: Το μήκος του γηπέδου είναι 100, άρα ο πρώτος επόπτης κινείται μεταξύ 0 και 50 και ο δεύτερος μεταξύ 50 και 100 (βλ. σχήμα). Γίνονται συνολικά 10 φάσεις. Και οι δύο επόπτες ξεκινούν από τη θέση 50. Στις πρώτες τέσσερις φάσεις (493025 και 0) ο πρώτος επόπτης τρέχει μέχρι τη θέση 0 διανύοντας συνολικά 50 μέτρα, ενώ ο δεύτερος επόπτης παραμένει ακίνητος στη θέση 50. Στην πέμπτη φάση (50), ο πρώτος επόπτης επιστρέφει στη θέση 50 διανύοντας άλλα 50 μέτρα και ο δεύτερος παραμένει ακίνητος στη θέση 50. Στην έκτη φάση (55), ο δεύτερος επόπτης τρέχει μέχρι τη θέση 55 διανύοντας 5 μέτρα, ενώ ο πρώτος παραμένει ακίνητος στη θέση 50. Στην έβδομη φάση (40), ο δεύτερος επόπτης επιστρέφει στη θέση 50 διανύοντας άλλα 5 μέτρα και ο πρώτος επόπτης τρέχει μέχρι τη θέση 40 διανύοντας 10 μέτρα. Στις τελευταίες τρεις φάσεις (3020 και 0), ο πρώτος επόπτης τρέχει μέχρι τη θέση 0 διανύοντας συνολικά 40 μέτρα ενώ ο δεύτερος επόπτης παραμένει ακίνητος στη θέση 50. Οι συνολικές αποστάσεις που διανύθηκαν από τους δύο επόπτες είναι: L1=50+50+10+40=150 και L2=5+5=10.

Mορφοποίηση: Στην έξοδο, όλες οι γραμμές τερματίζουν με ένα χαρακτήρα newline.
Mέγιστος χρόνος εκτέλεσης: 1 sec.

Mέγιστη διαθέσιμη μνήμη: 16 MB.