Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | nkperm.in, nkperm.out | Sursă | preONI 2008 Runda 1 |
Autor | Mircea Bogdan Pasoi | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 20480 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
NKPerm
Vom numi o (N,K) permutare un sir de N*K in care fiecare numar intre 1 si N apare de fix K ori, iar elementele adiacente sunt diferite. Fie S sirul tuturor (N,K) permutarilor ordonate lexicografic. Scrieti un program care sa implementeze urmatoarele operatii:
- A. se da o (N,K) permutare valida, sa se determine a cata este in sirul S
- B. se da un numar natural X, sa se determine a X-a permutare din sirul S
Date de intrare
Fisierul de intrare nkperm.in contine pe prima linie numerele naturale N K T.
Date de iesire
In fisierul de iesire nkperm.out ...
Restrictii
- 1 ≤ N ≤ 20
- 1 ≤ K ≤ 5
- 1 ≤ T ≤ 50
Exemplu
nkperm.in | nkperm.out |
---|---|
3 2 2 A 1 3 2 1 2 3 B 11 | 7 2 1 2 3 1 3 |
Explicatie
- 1 2 1 3 2 3
- 1 2 3 1 2 3
- 1 2 3 1 3 2
- 1 2 3 2 1 3
- 1 2 3 2 3 1
- 1 3 1 2 3 2
- 1 3 2 1 2 3
- 1 3 2 1 3 2
- 1 3 2 3 1 2
- 1 3 2 3 2 1
- 2 1 2 3 1 3
- 2 1 3 1 2 3
- 2 1 3 1 3 2
...