Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2015-02-20 12:50:17.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:pocnitoare.in, pocnitoare.outSursăONIS 2015, Runda 1
AutorMurtaza AlexandruAdăugată deThe_Viper_The_Mountain_And_The_ImpUNIBUC Impaler-009 Challenge costyv87 The_Viper_The_Mountain_And_The_Imp
Timp execuţie pe test2.5 secLimită de memorie4608 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Por Costel si Pocnitoarea

Intr-o seara, Por Costel, cel mai vestit dintre porci, a iesit la plimbare. Mergea linistit pe trotuar cand langa el s-a declansat o pocnitoare. Ca orice porc, a avut reactia defensiva de a incepe sa guitaie disperat si sa fuga de-alungul trotuarului.

Desi miscarea lui Por Costel de-alungul trotuarului pare aleatoare, la o inspectie amanuntita observam o anumita regula. Sa consideram strada divizata in pozitii indexate de la 0 la N-1. Por Costel se afla la momentul 1 in pozitia X_1. Daca la momentul i, Por Costel se afla la pozitia X, la momentul i+1 Por Costel se va afla la pozitia (i*X + A) mod N.

Pentru a fi pregatiti de situatia in care Por Costel sare panicat in mijlocul strazii (Doamne fereste !), fanii lui va implora sa puteti spune in orice moment in ce pozitie se afla el. Un query q semnifica intrebarea "Pe ce pozitie se afla Por Costel la momentul de timp q?" Query-urile vor fi la fel de aleatoare ca si miscarea lui Por Costel. Voua vi se va da query-ul initial Q_1 iar celelalte query-uri se genereaza astfel: daca tocmai am raspuns la intrebarea Q_i, query-ul Q_i_+_1 va fi (i*X_i + B) mod (10^7 + 3) + 1 unde X_i este raspunsul la query-ul i.

Date de intrare

În fişierul de intrare pocnitoare.in se va gasii pe prima linie N, A, B, X_1 (pozitia initiala a lui Por Costel), Q (numarul de query-uri), Q_1(query-ul initial).

Date de ieşire

În fişierul de ieşire pocnitoare.out se vor gasii Q linii, pe linia i aflandu-se raspunsul la al i-lea query.

Restricţii

  • 1N, A, B2 * 10^9
  • 0X_1N-1
  • 1Q10^5^
  • 1Q_1(10^7 + 3)
  • a mod b reprezinta restul impartirii lui a la b
  • Atentie la limita de memorie!

Exemplu

pocnitoare.inpocnitoare.out
17 3 7 1 3 1
3
6
10
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?