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

هذا صحيح لأن كل حرف يُستبدل برقم مختلف، وبعد تحويل الكلمات إلى أرقام فإنها تشكّل مجموعًا صالحًا.

يجب أن يمثّل كل حرف رقمًا مختلفًا، ويجب ألا يكون الرقم الأول في عدد مكوّن من عدة أرقام صفرًا.

المدخل

سيتلقّى برنامجك أحجية الأبجدية العددية في سلسلة نصية واحدة عبر المدخل القياسي (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

إذا كان للأحجية عدة حلول صحيحة، فيكفي أن تطبع أيًّا منها.

إذا لم يكن للأحجية حل، فلا تطبع شيئًا (سطر فارغ).

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
AWK Exercism

مستعد لبدء Alphametics؟

سجّل في Exercism لتتعلّم وتتقن AWK عبر 3 مفاهيم92 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.