Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2007-02-13 07:34:21.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:reguli.in, reguli.outSursăpreONI 2007, Runda 2
AutorFilip Cristian BuruianaAdăugată defilipbFilip Cristian Buruiana filipb
Timp execuţie pe test0.175 secLimită de memorie36864 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise | Statistici

Reguli

La ora de matematica, Gigel invata despre siruri. Pentru a intelege mai bine cum functioneaza acestea, el incearca mai intai sa construiasca niste siruri speciale astfel: alege un element X care il considera ca fiind primul termen al sirului si afla apoi toate elementele sale urmarind niste reguli stabilite anterior. O regula pentru un sir este un vector x = (x1, x2, ... xk) de numere intregi. Pornind de la elementul X, primul element al sirului, Gigel aduna x1 pentru a obtine cel de-al doilea element al sirului, apoi la al doilea element al sirului aduna x2 pentru a obtine cel de-al treilea element, etc. Dupa ce a utilizat toate cele k numere, procedeul se repeta: la ultimul numar obtinut se aduna x1, etc.
Gigel construieste un sir de lungime N folosind procedeul de mai sus. Problema apare cand, dupa un timp, el uita regula pe care a folosit-o pentru a-l genera. Sa se determine cea mai scurta regula care a generat sirului respectiv. 

Date de intrare

Fisierul de intrare este reguli.in. Pe prima linie a acestui fisier se afla N, numarul de elemente al sirului pe care ni le da Gigel (primele N elemente de fapt, pentru ca un sir este infinit). Urmatoarele N linii contin cate un numar intreg.

Date de iesire

Pe prima linie a fisierului reguli.out se afla K, lungimea minima a unei reguli ce poate duce la sirul din fisierul de intrare. Urmeaza K linii, pe fiecare aflandu-se cate un numar intreg, descriind regula determinata sub forma vectorului x = (x1, x2, ... xk).

Restrictii

  • 5 ≤ N ≤ 100 000
  • Numerele din sirul dat de Gigel se incadreaza intotdeauna in intregi cu semn pe 64 de biti

Exemplu

reguli.inreguli.out
7
8
10
14
13
15
19
18
3
2
4
-1

Explicatie

2, 4, -1

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?