#2128
Definim o permutare dublă de ordin n ca fiind un șir format din primele 2n numere naturale nenule:
(a[1], a[2], ... , a[n], a[n+1], a[n+2], ... , a[2n]). Această permutare dublă este de trei ori în creștere, dacă sunt adevărate următoarele trei proprietăți:
n elemente este crescătoare: a[1]<a[2]< ... < a[n]n elemente este crescătoare: a[n+1]<a[n+2]< ... < a[2n]a[1]<a[n+1], a[2]<a[n+2], ... , a[n]<a[2n].Pentru simplificare în continuare permutarea dublă de trei ori în creștere se va numi permutare. Vom considera toate permutările de ordin n ordonate lexicografic, numerotate începând cu 1.
Există două tipuri de întrebări:
Să se răspundă corect la un set de întrebări.
OJI 2017, Clasele XI-XII
| Problema | Permutare2 | Operații I/O |
permutare2.in/permutare2.out
|
|---|---|---|---|
| Limita timp | 1.5 secunde | Limita memorie |
Total: 64 MB
/
Stivă 32 MB
|
| Id soluție | #63298391 | Utilizator | |
| Fișier | permutare2.cpp | Dimensiune | 3.48 KB |
| Data încărcării | 25 Februarie 2026, 12:20 | Scor/rezultat | 0 puncte |
permutare2.cpp: In function 'std::vector<int> kthPermutation(int, long long int)': permutare2.cpp:39:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int idx = 0; idx < available.size(); idx++) { ^ permutare2.cpp:42:18: warning: variable 'placeFirstHalf' set but not used [-Wunused-but-set-variable] bool placeFirstHalf = true; ^ permutare2.cpp: In function 'long long int rankPermutation(int, const std::vector<int>&)': permutare2.cpp:72:48: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int idx = 0; idx < available.size(); idx++) { ^ permutare2.cpp: In function 'int main()': permutare2.cpp:101:42: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < ans.size(); i++) { ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 0 | 0.004 secunde | Raspuns gresit. | 10 | 0 | Exemplu | |
| 1 | 0.552 secunde | Raspuns gresit. | 10 | 0 | ||
| 2 | 1.24 secunde | Raspuns gresit. | 10 | 0 | ||
| 3 | 0.584 secunde | Caught fatal signal 11 | 10 | 0 | ||
| 4 | 0.572 secunde | Caught fatal signal 11 | 10 | 0 | ||
| 5 | 0.58 secunde | Caught fatal signal 11 | 10 | 0 | ||
| 6 | 0.6 secunde | Caught fatal signal 11 | 10 | 0 | ||
| 7 | 0.556 secunde | Caught fatal signal 11 | 10 | 0 | ||
| 8 | 1.176 secunde | Raspuns gresit. | 10 | 0 | ||
| 9 | 0.548 secunde | Raspuns gresit. | 10 | 0 | ||
| Punctaj total | 0 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Permutare2 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.