Tarot

Time limit: 0.15s Memory limit: 64MB Input: tarot.in Output: tarot.out

Cerință

În chilia întunecată a Marii Preotese Esmeralda, mirosul de smirnă și tămâie vestește începerea unui ritual străvechi. Pe masa de catifea neagră, ea a etalat un set special de NN cărți de Tarot distincte, numite „Arcanele de Obsidian”. Fiecare dintre aceste cărți poartă inscripționat un număr natural VV
V, reprezentând „Greutatea Destinului”.
În această noapte, Esmeralda consideră că numărul 13 este „Numărul Destinului”, iar fiecare carte are o putere ascunsă numită Rezonanță. Matematic, Rezonanța unei cărți cu valoarea VV este egală cu exponentul maxim pp la care numărul 13 apare în descompunerea în factori primi a lui V!V! (factorialul valorii V, adică 12V1 \cdot 2 \cdot \dots \cdot V.

O carte este considerată Sacră doar dacă Rezonanța ei pp este un număr prim. (Exemplu: Pentru o carte cu valoarea V = 25, în produsul 12251 \cdot 2 \cdot \dots \cdot 25, numărul 1313 apare o singură dată. Rezonanța este p = 1. Deoarece 1 nu este prim, cartea nu este Sacră. Pentru o carte cu V = 26, numărul 13 apare de două ori, în factorii
13 și 26. Rezonanța este p = 2. Deoarece 2 este prim, cartea este Sacră).

Marea Preoteasă trebuie să realizeze TT ritualuri de divinație. Pentru fiecare ritual, ea primește o viziune sub forma unui prag numeric VpragV_{prag}. Ea trebuie să găsească în setul de NN cărți de pe masă pe cea mai potrivită: cartea Sacră care are valoarea cea mai mică, dar care este cel puțin egală cu VpragV_{prag}.

Cunoscând cele NN valori ale cărților etalate pe masă și cele TT praguri din viziuni, determinați pentru fiecare viziune valoarea cărții Sacre căutate. Dacă în setul de pe masă nu există nicio carte Sacră cu valoarea cel puțin egală cu pragul dat, afișați -1.

Date de intrare

Pe prima linie a fisierului de intrare tarot.in se află numărul natural NN.
Pe a doua linie se află NN numere naturale, în ordine crescătoare, reprezentând valorile cărților.
Pe a treia linie se află numărul natural TT.
Pe a patra linie se află cele TT praguri VpragV_{prag}.

Date de ieșire

În fișierului de ieșire tarot.out Se vor afișa TT numere naturale, separate prin spațiu, reprezentând răspunsul pentru fiecare viziune.

Restricții și precizări

  • 1N,T100 0001 \le N, T \le 100 \ 000;
  • 1V,Vprag1 000 0001 \le V, V_{prag} \le 1 \ 000 \ 000
  • Cele NN numere reprezentând valorile cărților din fișierul de intrare sunt furnizate în ordine crescătoare.

Punctajul se acordă astfel:

  • 2020 de puncte: N,T100N, T \le 100 și V,Vprag500V, V_{prag} \le 500.
  • 4040 de puncte: N,T1 000N, T \le 1 \ 000 și V,Vprag100 000V, V_{prag} \le 100 \ 000. (Include testele pentru 20p).
  • 60 de puncte: N,T10 000N, T \le 10 \ 000 și V,Vprag1 000 000V, V_{prag} \le 1 \ 000 \ 000. (Include testele anterioare).
  • 100100 de puncte: Restricțiile inițiale (N,T100 000N, T \leq 100 \ 000).

Exemplul 1

tarot.in

6
10 26 30 39 52 65
3
20 70 35

tarot.out

26 -1 39

Explicație

Cartea V=10V = 10: Rezonanța p=0p = 0, 00 nu este număr prim → Nu este Sacră.
Cartea V=26V = 26: Rezonanța p=2p = 2, 22 este număr prim → Este Sacră.
Cartea V=30V = 30: Rezonanța p=2p = 2, 22 este număr prim → Este Sacră.
Cartea V=39V = 39: Rezonanța p=3p = 3, 33 este număr prim → Este Sacră.
Cartea V=52V = 52: Rezonanța p=4p = 4, 44 nu este număr prim → Nu este Sacră.
Cartea V=65V = 65: Rezonanța p=5p = 5, 55 este număr prim → Este Sacră.

Lista valorilor sacre: {26,30,39,65}\{26, 30, 39, 65\}

Procesarea viziunilor:

VpragV_{prag} = 20 → cea mai mica valoare sacră \geq 20 este 26.
VpragV_{prag} = 70 → nu există nicio valoare sacră \geq 70 → -1.
VpragV_{prag} = 35 → cea mai mica valoare sacră \geq 35 este 39.

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