Με δεδομένο ένα παζλ alphametics, βρες τη σωστή λύση.
Το Alphametics είναι ένα παζλ όπου τα γράμματα μέσα στις λέξεις αντικαθίστανται από αριθμούς.
Για παράδειγμα, SEND + MORE = MONEY:
S E N D
M O R E +
-----------
M O N E Y
Αντικαθιστώντας τα με έγκυρους αριθμούς προκύπτει:
9 5 6 7
1 0 8 5 +
-----------
1 0 6 5 2
Αυτό είναι σωστό γιατί κάθε γράμμα αντικαθίσταται από έναν διαφορετικό αριθμό και οι λέξεις, μεταφρασμένες σε αριθμούς, σχηματίζουν ένα έγκυρο άθροισμα.
Κάθε γράμμα πρέπει να αντιπροσωπεύει ένα διαφορετικό ψηφίο και το πρώτο ψηφίο ενός πολυψήφιου αριθμού δεν πρέπει να είναι μηδέν.
Το script σου θα λάβει το παζλ alphametic ως μία συμβολοσειρά μέσω τυπικής εισόδου (stdin). Η συμβολοσειρά του παζλ ακολουθεί τη μορφή WORD1 + WORD2 + ... == RESULT.
Για παράδειγμα:
SEND + MORE == MONEY
Αν το παζλ έχει λύση, εκτύπωσε μία μόνο γραμμή που αποτελείται από ζεύγη LETTER=DIGIT χωρισμένα με κενά, ταξινομημένα αλφαβητικά με βάση το γράμμα.
Για το παραπάνω παράδειγμα, η έξοδος θα πρέπει να είναι:
D=7 E=5 M=1 N=6 O=0 R=8 S=9 Y=2
Αν το παζλ έχει πολλαπλές έγκυρες λύσεις, η εκτύπωση οποιασδήποτε από αυτές είναι αποδεκτή.
Αν το παζλ δεν έχει λύση, μην εκτυπώσεις τίποτα (μία κενή γραμμή).
Γράψου στο Exercism για να μάθεις και να κατακτήσεις AWK με 3 έννοιες92 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.