galax

Time limit: 0.12s Memory limit: 16MB Input: galax.in Output: galax.out

Într-un viitor mai mult sau mai puţin apropiat, oamenii vor popula nn galaxii, numerotate de la 11 la nn. Datorită dezvoltării tehnologiei de transport spaţial este posibil ca din oricare galaxie să se ajungă printr-un zbor în oricare altă galaxie. Fiecare pereche de galaxii defineşte astfel un zbor care poate fi parcurs în orice sens.

La un moment dat se ia hotărârea ca n+12\frac{n+1}{2} companii de transport să asigure libera circulaţie a oamenilor între galaxiile existente. Companiile sunt numerotate de la 11 la n+12\frac{n+1}{2}. Fiecărei companii xx i se va atribui o mulţime de zboruri ZxZ_x. Notăm cu GxG_x mulţimea galaxiilor deservite de compania xx prin zborurile din mulţimea ZxZ_x.

Zborurile vor fi distribuite conform următoarelor reguli:

  1. prin zborurile din ZxZ_x, compania xx poate transporta oameni între oricare două galaxii din GxG_x, (fie direct, fie trecând prin alte galaxii din GxG_x);
  2. pentru oricare două galaxii din GxG_x, modul în care compania xx transportă călătorii de la o galaxie la cealaltă este unic;
  3. fiecare zbor trebuie să fie atribuit exact unei singure companii.

Cerinţă

Scrieţi un program care să determine o modalitate de atribuire a zborurilor celor n+12\frac{n+1}{2} companii în conformitate cu regulile enunţate mai sus.

Date de intrare

Fişierul de intrare galax.in conţine o singură linie pe care va fi scris un număr natural nn, reprezentând numărul de galaxii.

Date de ieşire

Fişierul de ieşire galax.out va conţine câte o linie pentru fiecare pereche de galaxii. Pe această linie vor fi scrise 33 numere naturale a b ca \ b \ c, cu semnificaţia “zborul dintre galaxiile aa şi bb este atribuit companiei cc”.

Restricții și precizări

  • 3<n<1 0013 < n < 1 \ 001
  • a div ba \ div \ b este câtul împărţirii întregi a lui aa la bb.

Exemplul 1

galax.in

4

galax.out

1 4 1
1 2 2
4 3 1
3 1 2
3 2 1
2 4 2

Explicație

Exemplul 2

galax.in

5

galax.out

1 2 1
1 5 3
2 4 1
4 3 1
5 3 1
1 3 2
2 3 2
1 4 3
5 2 2
5 4 2

Explicație

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