Divizibilitate

Time limit: 2s Memory limit: 64MB Input: Output:

Șimon a învățat ieri la școală criteriile de divizibilitate și fiind un elev foarte deștept Georgescu i-a dat o problemă interesantă la care se gândea din tinerețe.

Cerință

Se dă mulțimea de cifre M={1,6,8,9}M = \{ 1, 6, 8, 9 \}.

Să se răspundă la QQ întrebări de forma:
Câte numere de NN cifre formate doar din cifrele mulțimii MM au restul la împărțirea cu 33, valoarea XX.

Date de intrare

Pe prima linie se va afla numărul QQ și pe următoarele QQ linii câte două numere naturale NN și XX.

Date de ieșire

Se vor afișa QQ numere naturale pe câte o linie, reprezentând răspunsul la fiecare întrebare, în ordine.

Restricții și precizări

  • Pentru că răspunsul poate fi foarte mare, Șimon nu îi va spune lui Georgescu decât restul împărțirii acestuia la 109+710^9 + 7.
  • 1N10181 \leq N \leq 10^{18}.
  • 1Q100 0001 \leq Q \leq 100 \ 000.
  • Evident, 0X20 \leq X \leq 2.
# Punctaj Restricții
1 11 1N61 \leq N \leq 6
2 20 X=0X = 0
3 41 7N100 0007 \leq N \leq 100 \ 000
4 28 Fără alte restricții suplimentare

Exemplu

stdin

3
2 0
3 1
5 2

stdout

6
21
341

Explicație

Pentru N=2N = 2 și X=0X = 0 numerele convenabile sunt: 1818, 8181, 6666, 9999, 6969, 9696.
Sunt 66 numere de 22 cifre formate din cifrele mulțimii MM divizibile cu 33.
Restul împărțirii lui 66 la 109+710^9 + 7 este 66.

Log in or sign up to be able to send submissions!