#1203
KSecv
Fie un vector V
cu N
elemente și un număr K
. Vectorul V
trebuie împărțit în exact K
subsecvențe nevide, astfel încât fiecare element din vector să aparțină exact unei subsecvențe. Această împărțire trebuie făcută astfel încât maximul șmecheriei fiecărei subsecvențe să fie cât mai mic. (Această problemă concepe greșit sistemul de șmecherie și valoare). Șmecheria fiecărei subsecvențe se definește ca fiind parte întreagă din ((Vmax – Vmin + 1) / 2)
, unde Vmax
este valoarea maximă din subsecvență, iar Vmin
este valoarea minimă.
Vectorul V
de N
elemente va fi generat în felul următor: se dă un număr M
și 2
vectori A
și B
de lungime M
(indexați de la 0
la M - 1
). Fiecare element i
, 0 ≤ i < N
, din vectorul V
va fi calculat cu următoarea formulă: V[i] = (A[i % M] ^ B[i / M])
, unde x % y
reprezintă restul lui x
la împărțirea cu y
, x / y
reprezintă câtul împărțirii lui x
la y
și x ^ y
reprezintă rezultatul operației xor
(sau exclusiv pe biți) dintre x
și y
.
ONI 2015, Clasele XI-XII
Problema | KSecv | Operații I/O |
ksecv.in /ksecv.out
|
---|---|---|---|
Limita timp | 0.2 secunde | Limita memorie |
Total: 128 MB
/
Stivă 16 MB
|
Id soluție | #2200956 | Utilizator | |
Fișier | ksecv.cpp | Dimensiune | 666 B |
Data încărcării | 28 Martie 2016, 13:07 | Scor / rezultat | 0 puncte |
ksecv.cpp: In function 'int main()': ksecv.cpp:28:19: warning: unused variable 'mx' [-Wunused-variable] long long mx = v[i], mn = v[i]; ^ ksecv.cpp:28:30: warning: unused variable 'mn' [-Wunused-variable] long long mx = v[i], mn = v[i]; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
1 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
2 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
3 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
4 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
5 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
6 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
7 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
8 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
9 | 0 secunde | Caught fatal signal 8 | 10 | 0 | ||
Punctaj total | 0 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema KSecv 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ă.