== include(page="template/taskheader" task_id="fact") ==
Pentru un număr natural nenul, definim factorialul său ca fiind produsul tuturor numerelor naturale nenule mai mici sau egale cu el și îl notăm $N!$ (adică $N!=1*2*…*N$). Pentru o bază de numerație $B$ și un număr natural nenul [$N$], se cere determinarea ultimei cifre nenule a scrierii în baza $B$ a lui $N!$.
h2. Cerință
Se citesc 5 perechi de forma ([$N[~i~], B[~i~]$]), unde 1 ≤ $i$ ≤ 5. Pentru fiecare din cele 5 perechi citite, aflați ultima cifră nenulă a scrierii în baza $B[~i~]$ a factorialului numărului $N[~i~]$.
Poveste și cerință...
h2. Date de intrare
Fișierul de intrare $fact.in$ conține 5 linii, pe fiecare dintre ele fiind scrise câte două numere naturale nenule $N[~i~]$ și $B[~i~]$, scrise în baza 10, despărțite printr-un spațiu.
Fișierul de intrare $fact.in$ ...
h2. Date de ieșire
Fișierul de ieșire $fact.out$ va conține 5 linii. Pe linia $i$ se va afla cifra corespunzătoare unei perechi ([$N[~i~], B[~i~]$]), citită de pe linia $i$ din fișierul de intrare.
În fișierul de ieșire $fact.out$ ...
h2. Restricții
* $1 ≤ N[~i~] ≤ 100 000$, pentru $1 ≤ i ≤ 5$
* $2 ≤ B[~i~] ≤ 36$, pentru $1 ≤ i ≤ 5$
* În cazul în care $B[~i~]$ > 10, cifrele mai mari decât 9 vor fi reprezentate prin litere mari ale alfabetului englez (10=’A’, 11=’B’,…,35=’Z’)
* Un test va fi punctat doar dacă toate cele 5 rezultate cerute sunt corecte.
* $... ≤ ... ≤ ...$
h2. Exemplu
table(example).
|_. fact.in |_. fact.out |_. Explicații |
| 5 10
7 10
7 20
8 16
9 8
| 2
4
C
8
6
| 5!=120, în baza 10, deci ultima cifră nenulă este 2
7!=5040, în baza 10, deci ultima cifră nenulă este 4
7!=CC0, în baza 20, deci ultima cifră nenulă este C
8!=9D80, în baza 16, deci ultima cifră nenulă este 8
9!=1304600, în baza 8, deci ultima cifră nenulă este 6
|
|_. fact.in |_. fact.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
|
h3. Explicație
...
== include(page="template/taskfooter" task_id="fact") ==