30ος ΠΔΠ Καμπ (juniors)
Στοίβα νομισμάτων (coinstack)
Ο Άρης και η Βίκυ παίζουν το παρακάτω παιχνίδι. Διαλέγουν δύο διαφορετικούς θετικούς ακεραίους \(K\) και \(L\) και ξεκινάνε το παιχνίδι με μία στοίβα από \(N\) νομίσματα, παίζοντας εναλλάξ. Ο Άρης παίζει πάντα πρώτος. Καθένας με τη σειρά του μπορεί να πάρει \(1\), \(K\) ή \(L\) νομίσματα από τη στοίβα. Νικητής είναι εκείνος που θα πάρει το τελευταίο νόμισμα (ή νομίσματα).
Μετά από αρκετά παιχνίδια, ο Άρης κατάλαβε ότι υπάρχουν περιπτώσεις όπου μπορεί να κερδίσει ανεξάρτητα του πώς παίζει η Βίκυ. Στις υπόλοιπες περιπτώσεις, η Βίκυ αν είναι προσεκτική κερδίζει πάντα, ανεξάρτητα του πώς παίζει ο Άρης. Έτσι, πριν ξεκινήσουν, ο Άρης θέλει να γνωρίζει σε ποια περίπτωση βρίσκεται.
Γράψτε ένα πρόγραμμα το οποίο να βοηθά τον Άρη να προβλέπει το αποτέλεσμα του παιχνιδιού, δοθέντων των \(K\), \(L\) και \(N\).
Δεδομένα εισόδου (coinstack.in)
Η είσοδος περιγράφει \(M\) παιχνίδια. Η πρώτη γραμμή εισόδου περιέχει τους ακεραίους \(K\), \(L\) και \(M\), όπου \(1 < K < L < 10\) και \(3 < M < 50\). Η δεύτερη γραμμή περιέχει \(M\) ακεραίους \(N_i\) όπου \(1 \leq N_i ≤ 1.000.000\), που αναπαριστούν το πλήθος νομισμάτων στη στοίβα καθενός παιχνιδιού.
Δεδομένα εξόδου (coinstack.out)
Η έξοδος περιέχει μία συμβολοσειρά μήκους \(M\) που αποτελείται από τα κεφαλαία γράμματα A και B του λατινικού αλφαβήτου. Αν ο Άρης κερδίζει το \(i\)-οστό παιχνίδι (ανεξάρτητα του πώς παίζει η Βίκυ), το \(i\)-οστό γράμμα της συμβολοσειράς θα πρέπει να είναι A. Αν η Βίκυ κερδίζει το \(i\)-οστό παιχνίδι (ανεξάρτητα του πώς παίζει ο Άρης), το \(i\)-οστό γράμμα της συμβολοσειράς θα πρέπει να είναι B.
Παράδειγμα αρχείων εισόδου - εξόδου
| coinstack.in | coinstack.out |
|---|---|
| 2 3 5 3 12 113 25714 88888 |
ABAAB |
Περιορισμοί
- Όριο χρόνου εκτέλεσης: \(1\) sec.
- Όριο μνήμης: \(64\) MB.