COCI-12 (2012) - Γύρος #5 - 1 (Ljestvica)

View as PDF

Submit solution

Points: 15 (partial)
Time limit: 1.0s
Memory limit: 32M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python
Ljestvica

Η Βερόνικα σπουδάζει σε μουσική ακαδημία. Της δόθηκε μία παρτιτούρα σύνθεσης με μόνο νότες (χωρίς άλλες επισημάνσεις) και πρέπει να αναγνωρίσει την κλίμακα που χρησιμοποιήθηκε. Σε αυτό το πρόβλημα, θα περιοριστούμε μόνο στις δύο πιο συχνά χρησιμοποιούμενες (και συνήθως διδάσκονται πρώτα στα σχολεία) κλίμακες: τη A-ελάσσονα (Λα-ελάσσονα ή Α-mol) και τη C-μείζονα (Ντο-μείζονα ή C-dur).
Αυτό δεν τις καθιστά απλούστερες ή πιο βασικές από άλλες μικρές και μεγάλες κλίμακες – όλες οι ελάσσονες κλίμακες είναι αμοιβαία ισοδύναμες εκτός από τη μετάφραση, όπως και οι μείζονες κλίμακες.

Ακόμα, από τους 12 τόνους μιας οκτάβας {A, A#, B, C, C#, D, D#, E, F, F#, G, G#} που χρησιμοποιούνται στη σύγχρονη μουσική1, οι κλίμακες A-ελάσσονα και C-μείζονα χρησιμοποιούν τους τόνους με τα συντομότερα ονόματα: Η Α-ελάσσονα ορίζεται ως τη διατεταγμένη επτάδα (A, B, C, D, E, F, G) και η C-μείζονα ως (C, D, E, F, G, A, B ).

Παρατηρήστε ότι τα σύνολα των τόνων αυτών των δύο κλιμάκων είναι ίσα. Ποιά είναι η διαφορά; Το πρόβλημά είναι ότι όχι μόνο το σύνολο των τόνων, αλλά και η χρήση τους, καθορίζει μια κλίμακα. Συγκεκριμένα, η τονική (ο πρώτος τόνος μιας κλίμακας), η υποδεσπόζουσα (ο τέταρτος τόνος) και η δεσπόζουσα (ο πέμπτος τόνος) είναι οι κύριοι υποψήφιοι για επιλεγμένους τόνους σε μια σύνθεση. Στην Α-ελάσσονα, αυτά είναι τα Α, D και Ε, και στην C-μείζονα, είναι τα C, F και G. Θα ονομάσουμε αυτούς τους τόνους κύριους τόνους.

Δεν είναι ακόμα ισοδύναμη η ζυγαριά εκτός από τη μετάφραση; Δεν είναι: για παράδειγμα, ο τρίτος τόνος της Α-ελάσσονα (C) είναι τρία ημιτόνια ψηλότερα από την τονική (A), ενώ ο τρίτος τόνος της C-μείζονα (E) είναι τέσσερα ημιτόνια ψηλότερα από την τονική (C). Η διαφορά λοιπόν έγκειται στα μεσοδιαστήματα. Αυτό κάνει τις ελάσσονες κλίμακες "λυπητερές" και τις μείζονες κλίμακες "χαρούμενες".

Γράψτε ένα πρόγραμμα για να αποφασίσετε εάν μια σύνθεση είναι πιο πιθανό να γραφτεί σε Α-ελάσσονα ή σε C-μείζονα, μετρώντας εάν υπάρχουν περισσότεροι κύριοι τόνοι της Α-ελάσσονα ή της C-μείζονα μεταξύ των τονισμένων ήχων (οι πρώτοι τόνοι σε κάθε μέτρο). Εάν υπάρχει ίσος αριθμός κύριων ήχων, προσδιορίστε την κλίμακα με βάση τον τελευταίο τόνο (ο οποίος είναι σίγουρο ότι είναι είτε A, για την Α-ελάσσονα, είτε C, για την C-μείζονα σε οποιαδήποτε τέτοια περίπτωση δοκιμής).
Για παράδειγμα, εξετάστε τη γνωστή μελωδία "Frère Jacques"2:

CD|EC|CD|EC|EF|G|EF|G|GAGF|EC|GAGF|EC|CG|C|CG|C

Ο χαρακτήρας "|" διαχωρίζει τα μέτρα, οπότε οι τονισμένοι τόνοι είναι, κατά σειρά: C, E, C, E, E, G, E, G, G, E, G, E, C, C, C, C. Δέκα από αυτούς (C, C, G, G, G, G, C, C, C, C) είναι κύριοι τόνοι της C-μείζονα, ενώ έξι (E, E, E, E, E, E) είναι οι κύριοι τόνοι της Α-ελάσσονα. Επομένως, η καλύτερη εκτίμησή μας είναι ότι το τραγούδι γράφτηκε σε C-μείζονα.

Είσοδος

Η πρώτη και μοναδική γραμμή εισόδου περιέχει μια ακολουθία τουλάχιστον 5 και το πολύ 100 χαρακτήρων από το σύνολο {"A", "Β", "C", "D", "E", "F", "Ζ", "|"}. Αυτή είναι μια απλοποιημένη σημειογραφία για μια σύνθεση, όπου ο χαρακτήρας "|" χωρίζει τα μέτρα. Οι χαρακτήρες "|" δεν θα εμφανίζονται ποτέ ο ένας δίπλα στον άλλο, στην αρχή ή στο τέλος της ακολουθίας.

Έξοδος

Η πρώτη και μοναδική γραμμή εξόδου πρέπει να περιέχει το κείμενο "C-dur" (για την C-μείζονα) ή "A-mol" (για την A-ελάσσονα).

Παραδείγματα

input

AEB|C

output

C-dur

input

CD|EC|CD|EC|EF|G|EF|G|GAGF|EC|GAGF|EC|CG|C|CG|C

output

C-dur

^1Αυτή είναι η διεθνής, πιο συνεπής σημειογραφία. Στην Κροατία, χρησιμοποιείται συνήθως η γερμανική σημείωση, όπου το A# (ή Bb) μετονομάζεται σε B και το B μετονομάζεται σε H.

^2"Κοιμάσαι?" Στα Αγγλικά; "Bratec Martin" στα κροατικά.


Comments

There are no comments at the moment.