#4817
Fie a = (a[1], a[2], ..., a[n]) un șir de n numere întregi. Pentru fiecare k ∈ {1,2, ...,n}, definim min[k] = min{a[1], a[2], ... ,a[k]} și max[k] = max{a[1], a[2], ...,a[k]}. Astfel, asociem șirului a un alt șir de intervale închise minmax = ([min[1], max[1]], [min[2], max[2]], ..., [min[n], max[n]]). Vom spune că șirul a este un șir cromatic dacă și numai dacă elementele șirului minmax sunt distincte două câte două, adică nu există două intervale identice în șir. Dându-se un șir a, nu neapărat cromatic, să se determine:
NSC ce se pot forma prin rearanjarea elementelor șirului a. Întrucât acest număr poate fi foarte mare, se cere NSC modulo 1.000.000.007.a este cromatic, să se determine poziția p ∈ {1, 2, ..., NSC} a șirului a în lista ordonată lexicografic a tuturor permutărilor cromatice ale lui a.q ∈ {1, 2, ..., NSC}, să se determine cel de-al q-lea șir cromatic în ordine lexicografică ce se poate obține prin rearanjarea elementelor șirului a.| Problema | cromatic | Operații I/O |
cromatic.in/cromatic.out
|
|---|---|---|---|
| Limita timp | 1.5 secunde | Limita memorie |
Total: 256 MB
/
Stivă 64 MB
|
| Id soluție | #63185948 | Utilizator | |
| Fișier | cromatic.cpp | Dimensiune | 2.94 KB |
| Data încărcării | 19 Februarie 2026, 15:32 | Scor/rezultat | Eroare de compilare |
cromatic.cpp: In function 'int main()': cromatic.cpp:84:32: error: parameter declared 'auto' auto bkt_c2 = [&](auto self, int pas, int mi, int ma) -> void { ^ cromatic.cpp: In lambda function: cromatic.cpp:97:30: error: 'self' was not declared in this scope self(self, pas+1, (pas==1?a[i]:min(mi, a[i])), (pas==1?a[i]:max(ma, a[i]))); ^ cromatic.cpp:97:99: error: 'self' was not declared in this scope self(self, pas+1, (pas==1?a[i]:min(mi, a[i])), (pas==1?a[i]:max(ma, a[i]))); ^ cromatic.cpp:97:99: error: redeclaration of '<typeprefixerror>self' cromatic.cpp:97:30: note: previous declaration '<typeprefixerror>self' self(self, pas+1, (pas==1?a[i]:min(mi, a[i])), (pas==1?a[i]:max(ma, a[i]))); ^ cromatic.cpp: In function 'int main()': cromatic.cpp:103:31: error: no match for call to '(main()::__lambda0) (main()::__lambda0&, int, int, int)' bkt_c2(bkt_c2, 1, 0, 0); ^ cromatic.cpp:84:25: note: candidate is: auto bkt_c2 = [&](auto self, int pas, int mi, int ma) -> void { ^ cromatic.cpp:84:66: note: main()::__lambda0 auto bkt_c2 = [&](auto self, int pas, int mi, int ma) -> void { ^ cromatic.cpp:84:66: note: candidate expects 3 arguments, 4 provided
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema cromatic 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ă.