Time limit: 0.6s
Memory limit: 256MB
Input:
Output:
Cerință
Se dă un număr natural și numere naturale , cărora li se pot aplica un număr arbitrar de transformări. O transformare constă în următoarele tipuri de operații:
- Adunare sau înmulțire cu ( sau );
- Adunare sau înmulțire cu ( sau );
- Adunare sau înmulțire cu ( sau );
- Adunare sau înmulțire cu ( sau ).
Pentru fiecare număr din cele date, se cere numărul minim de transformări care trebuie aplicate astfel încât suma cifrelor numărului rezultat să fie divizibilă cu .
Date de intrare
Pe prima linie se găsește un număr natural . Pe fiecare din următoarele linii se găsește câte un număr natural .
Date de ieșire
Pe linia se va afișa numărul minim de transformări aplicate celui de-al -lea număr.
Restricții și precizări
- ;
- ;
- Pentru teste în valoare de de puncte, ;
- Pentru alte teste în valoare de de puncte, nu există restricții suplimentare.
Exemplu
stdin
3
4
9
23895793
stdout
1
0
2
Explicație
Pentru , acesta se poate aduna cu , obținând astfel .
Pentru , acesta are deja suma cifrelor divizibilă cu .
Pentru , aplicăm două transformări:
- , acesta devenind egal cu ;
- , acesta devenind egal cu , care are suma cifrelor .