sir

Asa cum stim, lui Gigel îi place sa se joace cu numerele. Jucandu-se, a observat ca exista unele siruri de numere care au proprietati mai ciudate. De exemplu, a observat ca sirul de numere naturale 1, 3, 5 are proprietatile:
- este crescator
- 1>=1; 1+3>=22; 1+3+5>=32
- 1+3+5=32
În schimb sirul 1, 2, 6 nu are toate aceste proprietati deoarece suma primelor doua elemente este mai mica decât 4. Generalizând, Gigel a numit aceste siruri siruri speciale. Deci, un sir a1, a2, .., an de numere naturale este numit sir special de ordin n daca satisface urmatoarele conditii:

  1. a1+a2+ ... +ak>=k2 (pentru orice k >= 1)
  2. a1+ ... +an=n2
  3. a1<=a2<= ... <=an

Cerinta
Gigel doreste sã scrieti un program care sa genereze sirurile speciale de un ordin dat.

Date de intrare
Fisierul de intrare sir.in contine o singura linie pe care se afla un numar natural n care este ordinul sirurilor speciale ce se vor genera.

Date de iesire
Fisierul de iesire sir.out contine pe fiecare rând câte un sir special de ordin n. Fiecare sir este scris pe o linie cu elementele separate prin câte un spatiu. Sirurile se vor genera în ordine lexicografica. Dacã numarul total de siruri care trebuie scris este mai mare de 40, ele nu vor fi scrise toate; se vor scrie primele 20 de siruri, apoi se scriu ultimele 20 siruri speciale.

Restrictii
1<=n<=30

Exemple
sir.in
sir.out sir.in sir.out
3 1 3 5
1 4 4
2 2 5
2 3 4
3 3 3
5 1 3 5 7 9
1 3 5 8 8
1 3 6 6 9
1 3 6 7 8
1 3 7 7 7
1 4 4 7 9
1 4 4 8 8
1 4 5 6 9
1 4 5 7 8
1 4 6 6 8
1 4 6 7 7
1 5 5 5 9
1 5 5 6 8
1 5 5 7 7
1 5 6 6 7
1 6 6 6 6
2 2 5 7 9
2 2 5 8 8
2 2 6 6 9
2 2 6 7 8
3 3 4 7 8
3 3 5 5 9
3 3 5 6 8
3 3 5 7 7
3 3 6 6 7
3 4 4 5 9
3 4 4 6 8
3 4 4 7 7
3 4 5 5 8
3 4 5 6 7
3 4 6 6 6
3 5 5 5 7
3 5 5 6 6
4 4 4 4 9
4 4 4 5 8
4 4 4 6 7
4 4 5 5 7
4 4 5 6 6
4 5 5 5 6
5 5 5 5 5

Timp maxim de executie/test: 0.1 secunde

Marinel Serban
Liceul de Informatica "Gr. C. Moisil" Iasi
marinel_serban@yahoo.com