#2570
mostenire
Regele Rufus dorește să stabilească moștenitorul averii sale, adică să ofere parola de la seif celui mai deștept dintre fiii săi. Inițial, regele a avut parola X
formată din N
cifre nenule și un cod cheie Q
(număr natural cu exact nouă cifre, distincte, toate nenule). În fiecare an din cei K
ani de domnie, folosind codul cheie Q
, Rufus a modificat câte o secvență de cifre din parolă ajungând la parola finală P
.Pentru fiecare secvență se cunoaște poziția S
a primei cifre din secvență și poziția D
a ultimei cifre din secvență. Astfel, secvența este formată din cifrele situate pe pozițiile S
, S+1
, S+2
,…, D
în parola X
.
Modificarea unei secvențe din X
constă în înlocuirea fiecărei apariții a cifrei 1
cu prima cifră a lui Q
, apoi a fiecărei apariții a cifrei 2
cu a doua cifră a lui Q
,…, a fiecărei apariții a cifrei 9
cu ultima cifră a lui Q
.
Pentru a decide moștenitorul, regele le dă fiilor parola finală P
, codul cheie Q
, numărul K
de ani de domnie și cele K
secvențe de cifre care au fost modificate și le cere să găsească: parola inițială X
, poziția minimă Z
din parola X
care a apărut în cele mai multe secvențe dintre cele modificate de rege de-a lungul celor K
ani de domnie și cifrele distincte care au ocupat poziția Z
în cei K
ani.
Scrieți un program care citește numerele Q
, N
, K
, cele N
cifre ale parolei finale P
și cele K
perechi de poziții S
și D
, și care rezolvă următoarele două cerințe:
X
;Z
și cifrele distincte care au ocupat această poziție în cei K
ani de domnie.ONIG 2018
Problema | mostenire | Operații I/O |
mostenire.in /mostenire.out
|
---|---|---|---|
Limita timp | 0.3 secunde | Limita memorie |
Total: 8 MB
/
Stivă 8 MB
|
Id soluție | #50593233 | Utilizator | |
Fișier | mostenire.cpp | Dimensiune | 1.22 KB |
Data încărcării | 16 Aprilie 2024, 13:37 | Scor / rezultat | 90 puncte |
mostenire.cpp: In function 'int main()': mostenire.cpp:9:28: warning: unused variable 's' [-Wunused-variable] int n, k, c, p[10005], s, d, secv[205], maxim=-1, ans21, ans22[11]; ^ mostenire.cpp:9:31: warning: unused variable 'd' [-Wunused-variable] int n, k, c, p[10005], s, d, secv[205], maxim=-1, ans21, ans22[11]; ^ mostenire.cpp:31:18: warning: 'ans21' may be used uninitialized in this function [-Wmaybe-uninitialized] ans22[p[ans21]]++; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 5 | 5 | ||
2 | 0 secunde | OK. | 5 | 5 | ||
3 | 0 secunde | OK. | 5 | 5 | ||
4 | 0.008 secunde | OK. | 5 | 5 | ||
5 | 0.004 secunde | OK. | 5 | 5 | ||
6 | 0 secunde | OK. | 5 | 5 | ||
7 | 0 secunde | OK. | 5 | 5 | ||
8 | 0 secunde | OK. | 5 | 5 | ||
9 | 0 secunde | OK. | 5 | 5 | ||
10 | 0 secunde | OK. | 5 | 5 | ||
11 | 0 secunde | OK. | 5 | 5 | ||
12 | 0 secunde | OK. | 5 | 5 | ||
13 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
14 | 0.008 secunde | OK. | 5 | 5 | ||
15 | 0.004 secunde | OK. | 5 | 5 | ||
16 | 0 secunde | OK. | 5 | 5 | ||
17 | 0 secunde | OK. | 5 | 5 | ||
18 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
19 | 0 secunde | OK. | 5 | 5 | ||
20 | 0 secunde | OK. | 5 | 5 | ||
Punctaj total | 90 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema mostenire 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ă.