Feladat: S.61 Korcsoport: - Nehézségi fok: -
Füzet: 2011/március, 167 - 168. oldal  PDF  |  MathML 

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Az ún. betűösszeadás-feladványokban számjegyek helyett betűk szerepelnek. Az azonos betűk ugyanazt a számjegyet jelentik, a különbözőek különbözőeket. A betűk jelentését úgy kell megválasztani, hogy érvényes összeadást kapjunk. További kikötés, hogy az összeg első számjegye nem lehet nulla.
Például: emmsk¯+massk¯=eemeek¯. Ennek a betű-összeadásnak egyetlen megoldása van: a=7, e=8, k=4, m=0, s=9. Behelyettesítve a következő összeadást kapjuk: 80094+07994=88088.
Írjunk programot, amely a standard bemenetről beolvas egy megadott számrendszerbeli betűösszeadás-feladványt, és megad egy megoldást (ha létezik), valamint azt, hogy hány megoldása van.
A bemenet szerkezete a következő: az első sorban a számrendszer alapszáma (2b23) szerepel (számmal írva), a másodikban és a harmadikban a két összeadandó, a negyedikben pedig az összeg (mindben csak az angol ábécé kisbetűi szerepelnek, és hosszuk legfeljebb 1000 karakter).
A standard kimenet első sorában a megoldások száma szerepeljen. Amennyiben ez nem nulla, úgy a második sorban adjunk is meg egy tetszőleges megoldást, az alábbi formátumban. A bemenetben szereplő minden betűt soroljunk fel (szóközökkel elválasztva), és egyenlőségjellel kapcsolva írjuk melléjük a hozzárendelt számjegyet. A 9-nél nagyobb értékű számjegyeket rendre az angol ábécé nagybetűivel jelöljük, a hexadecimális számrendszerhez hasonlóan.

 
 

A példa összes megoldása:
 
 

A futásidőlimit tesztesetenként 1 perc.
Beküldendő a feladat megoldását tartalmazó forrás és projektállományok (az .exe és más a fordító által generált kiegészítő állományok nélkül), valamint a megoldás menetét röviden bemutató dokumentáció egy tömörített s61.zip mappában.
Értékelés: 8 pontot ér az a program, amely a honlapunkon elérhető mindegyik tesztesetre a megadott időkorláton belül helyes eredményt ad. Részpontszámok kaphatóak az olyan programra, amely nem adja meg a megoldások számát, vagy csak 10-es számrendszerbeli számokra működik. További 2 pont szerezhető a dokumentációval.