آلفامتیک

آلفامتیک

دشوار

دستورالعمل‌ها

یک پازل «آلفامتیک» داده شده است؛ پاسخ درست را پیدا کنید.

آلفامتیک یک پازل است که در آن حروف درون واژه‌ها با عدد جایگزین می‌شوند.

برای مثال 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

این صحیح است چون هر حرف با عددی متفاوت جایگزین می‌شود و واژه‌ها پس از تبدیل به عدد، یک جمع معتبر می‌سازند.

هر حرف باید نماینده‌ی یک رقم متفاوت باشد و رقم نخست یک عدد چندرقمی نباید صفر باشد.

راهنمایی‌ها

  • برای تجزیه‌ی متن، می‌توانید از کتابخانه‌ی FParsec استفاده کنید.
  • می‌توانید این تمرین را با یک الگوریتم جست‌وجوی فراگیر حل کنید، اما احتمالاً کارایی آن در زمان اجرا ضعیف خواهد بود. سعی کنید راه‌حل پیشرفته‌تری پیدا کنید. راهنمایی: می‌توانید الگوریتم جمع ستونی را امتحان کنید که معمولاً در مدرسه آموزش داده می‌شود.
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
F# Exercism

آماده‌اید آلفامتیک را شروع کنید؟

در Exercism ثبت‌نام کنید تا F# را همراه با 18 مفهوم148 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.