#3358
Se dă o permutare a mulțimii {1, 2, ..., n} adică un șir cu n numere distincte cuprinse între 1 și n. Se mai dă și o valoare k. Fiind permise maximum k interschimbări de elemente aflate pe poziții consecutive, se cere determinarea permutării minime din punct de vedere lexicografic.
C.N. "Frații Buzești" - concurs de selecție, clasa a IX-a, 2020
| Problema | gama | Operații I/O |
gama.in/gama.out
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64343342 | Utilizator | |
| Fișier | gama.cpp | Dimensiune | 3.09 KB |
| Data încărcării | 30 Aprilie 2026, 16:14 | Scor/rezultat | 100 puncte |
gama.cpp: In function ‘std::pair<Node*, Node*> split(Node*, int)’: gama.cpp:74:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 74 | auto [left, right] = split(treap->right, x - ind); | ^ gama.cpp:82:14: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 82 | auto [left, right] = split(treap->left, x); | ^ gama.cpp: In function ‘int query(Node*&, int, int)’: gama.cpp:122:10: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 122 | auto [left, full_right] = split(treap, st - 1); | ^ gama.cpp:123:10: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 123 | auto [sub, right] = split(full_right, dr - st + 1); | ^ gama.cpp: In function ‘Node* perm_circular(Node*, int, int)’: gama.cpp:133:10: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 133 | auto [left, full_right] = split(treap, st - 1); | ^ gama.cpp:134:10: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 134 | auto [full_sub, right] = split(full_right, dr - st + 1); | ^ gama.cpp:135:10: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 135 | auto [sub, el] = split(full_sub, dr - st); | ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 0 | 0.001 secunde | OK. | 7 | 7 | ||
| 1 | 0.001 secunde | OK. | 7 | 7 | ||
| 2 | 0.001 secunde | OK. | 7 | 7 | ||
| 3 | 0.001 secunde | OK. | 7 | 7 | ||
| 4 | 0.001 secunde | OK. | 7 | 7 | ||
| 5 | 0.001 secunde | OK. | 7 | 7 | ||
| 6 | 0.001 secunde | OK. | 7 | 7 | ||
| 7 | 0.001 secunde | OK. | 10 | 10 | ||
| 8 | 0.001 secunde | OK. | 10 | 10 | ||
| 9 | 0.002 secunde | OK. | 10 | 10 | ||
| 10 | 0.002 secunde | OK. | 21 | 21 | ||
| Punctaj total | 100 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema gama 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ă.