Aromatic Numbers
Το πρόβλημα αυτό περιλαμβάνει τον υπολογισμό της αξίας αρωματικών αριθμών, που είναι ένας συνδυασμός αραβικών ψηφίων και λατινικών αριθμών.
Ένας αρωματικός αριθμός έχει τη μορφή , όπου κάθε
είναι ένα αραβικό ψηφίο και κάθε
είναι ένας λατινικός αριθμός.
Κάθε ζεύγος
συνεισφέρει μια τιμή που περιγράφεται παρακάτω, και προσθέτοντας ή αφαιρώντας αυτές τις τιμές μεταξύ τους παίρνουμε την τιμή ολόκληρου του αρωματικού αριθμού.
Ένα αραβικό ψηφίο μπορεί να είναι
,
,
,
,
,
,
,
,
ή
.
Ένας λατινικός αριθμός
είναι ένα από τα επτά γράμματα
,
,
,
,
,
ή
.
Κάθε λατινικός αριθμός έχει μια τιμή βάσης:
Σύμβολο | |||||||
Τιμή βάσης |
Η τιμή ενός ζεύγους είναι
επί την τιμή βάσης του
.
Κανονικά, θα προσθέταμε τις τιμές των ζευγών για να πάρουμε τη συνολική τιμή.
Ωστόσο, όπου υπάρχουν διαδοχικά σύμβολα
με
να έχει αυστηρά μεγαλύτερη τιμή βάσης από το
, η τιμή του ζεύγους
πρέπει να αφαιρεθεί από το σύνολο, αντί να προστεθεί.
Για παράδειγμα, ο αριθμός έχει την τιμή
και
έχει την τιμή
.
Γράψτε ένα πρόγραμμα που να υπολογίζει τις τιμές των αρωματικών αριθμών.
Είσοδος
Η είσοδος θα είναι ένας έγκυρος αρωματικός αριθμός που θα αποτελείται από έως
σύμβολα.
Έξοδος
Η έξοδος θα είναι η δεκαδική τιμή του συγκεκριμένου αρωματικού αριθμού.
Παραδείγματα
input
3M1D2C
output
3700
input
2I3I2X9V1X
output
-16
Comments