#2344
dvorak
R.
a descoperit de curând tastatura DVORAK
și s-a decis că poate scrie mult mai rapid și mai corect cod folosind această tastatură decât folosind tastatura QWERTY
. Plictisindu-se, R.
a creat, pentru a onora tastatura lui preferată, transformarea dvorak
, care se realizează prin înlocuirea fiecărei litere dintr-un șir de caractere cu corespondența acesteia dintr-o permutare dată a alfabetului englez. De exemplu, cuvântul informatica
poate să devină, printr-o transformare dvorak, cburpmaycja
.
H.
, profitor din fire, a decis să intre pe calculatorul lui R.
și să îi fure sursele valoroase de la problemele “rupere” pe care le-a rezolvat.
Dar R.
şi-a securizat calculatorul cu o parolă (constând într-o succesiune de litere mici ale alfabetului englez). Din când în când, R.
își modifică o parte din parolă efectuând următoarea operație: alege două poziții în parolă S
i
(capăt stânga) si D
i
(capăt dreapta) apoi aplică transformarea dvorak asupra secvenței formată din caracterele situate în parolă pe poziții din intervalul [S
i
, D
i
]
. Această operație este de tipul 1
și este codificată prin: 1 S
i
D
i
.
Acum H.
are nevoie de ajutorul vostru ca să afle parola şi să furați împreună toate sursele ca sa fiți primii la statistici pe Varena). Din când în când, el vă va da câte un sir de caractere nevid (SIR
) și vă va întreba dacă acest șir se regăsește ca subsecvență în parola lui R
. Această operație este de tipul 2
și este codificată prin: 2 SIR
Cunoscându-se permutarea dată, parola lui R.
precum și o succesiune de Q
operații de tipul 1
sau 2
, găsiți răspunsurile la întrebările toate lui H.
Problema | dvorak | Operații I/O |
![]() dvorak.in /dvorak.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #51410166 | Utilizator | |
Fișier | dvorak.cpp | Dimensiune | 847 B |
Data încărcării | 13 Iunie 2024, 17:13 | Scor / rezultat | 100 puncte |
dvorak.cpp: In function 'int main()': dvorak.cpp:10:9: warning: unused variable 'o' [-Wunused-variable] int o,a,q,n,t,st,dr; ^ dvorak.cpp:10:11: warning: unused variable 'a' [-Wunused-variable] int o,a,q,n,t,st,dr; ^ dvorak.cpp:10:15: warning: unused variable 'n' [-Wunused-variable] int o,a,q,n,t,st,dr; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 10 | 10 | ||
2 | 0 secunde | OK. | 10 | 10 | ||
3 | 0 secunde | OK. | 10 | 10 | ||
4 | 0 secunde | OK. | 10 | 10 | ||
5 | 0 secunde | OK. | 10 | 10 | ||
6 | 0 secunde | OK. | 10 | 10 | ||
7 | 0 secunde | OK. | 10 | 10 | ||
8 | 0 secunde | OK. | 10 | 10 | ||
9 | 0 secunde | OK. | 10 | 10 | ||
10 | 0 secunde | OK. | 10 | 10 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema dvorak 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ă.