Revizia anterioară Revizia următoare
| Fișierul intrare/ieșire | regine.in, regine.out | Sursă | ad-hoc |
|---|---|---|---|
| Autor | din folclor | Adăugată de |
|
| Timp de execuție pe test | 1.2 sec | Limită de memorie | 512 KB |
| Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Regine
Se citesc 2 numere naturale N si K si un sir ordonat crescator A(1), A(2), ..., A(K). Scrieti un program care afiseaza K variante de asezare a N regine pe o tabla de patrate cu N linii si N coloane ( variantele cu numerele de ordine A(1), A(2), ..., A(K) din sirul variantelor ordonate crescator ) si in plus numarul total de variante existente. O varianta de asezare va fi codificata sub forma unui vector, in care pe pozitia i va fi pastrata coloana pe care a fost plasata regina de pe linia i.
Date de intrare
Fisierul de intrare regine.in va contine pe prima linie doua numere naturale N si K, iar pe a doua linie elementele sirului A(1), A(2), ..., A(K), separate printr-un spatiu.
Date de ieșire
In fisierul de ieșire regine.out vor fi scrise pe primele K linii cele K variante de asezare cu numerele de ordine A(1), A(2), ..., A(K) in ordinea aceasta. Elementele unui sir care codifica o solutie vor fi separate prin cate un spatiu.
Pe cel de-al $K + 1$-lea rand se va afla numarul total de solutii.
Restricții
- 5 ≤ N ≤ 14
- 1 ≤ K ≤ 5
- 1 ≤ A(i) ≤ TOTAL, unde 1 ≤ i ≤ K iar TOTAL este numarul de variante de asezare a N regine pe o tabla N * N
Exemplu
| regine.in | regine.out |
|---|---|
| 5 3
1 2 4 |
1 3 5 2 4
1 4 2 5 3
2 5 3 1 4
10 |
Explicație
Exista un numar total de 10 solutii. Asezarile cu numerele de ordine 1, 2 si 4 sunt cele afisate.



Poți vedea testele pentru această problemă accesând