#3398
kps
Un cuvânt se numește k
-ps dacă prefixul său de lungime k
este identic cu sufixul de lungime k
, iar k
este cea mai mare valoare strict mai mică decât lungimea cuvântului, cu această proprietate. Dacă nu există nicio astfel de valoare k
nenulă, spunem despre cuvânt că este 0
-ps. De exemplu, amalgam
este 2
-ps, iar amestec
este 0
-ps.
Rezolvați următoarele cerințe:
1) Se dă un cuvânt. Determinați k
asfel încât cuvântul să fie k
-ps.
2) Se dă un șir de caractere în care cuvintele sunt alcătuite din litere mici ale alfabetului englez și sunt separate prin spații. Să se afișeze în ordine cuvintele 0
-ps, 1
-ps, 2
-ps, 3
-ps, etc, până la cel mai mare k
pentru care există în șir cel puțin un cuvânt k
-ps. Pentru fiecare categorie, cuvintele vor fi afișate în ordine alfabetică.
Problema | kps | Operații I/O |
kps.in /kps.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #44052832 | Utilizator | |
Fișier | kps.cpp | Dimensiune | 1.60 KB |
Data încărcării | 13 Iunie 2023, 17:46 | Scor / rezultat | Eroare de compilare |
kps.cpp: In function 'int findK(char*)': kps.cpp:60:35: error: 'strlen' was not declared in this scope for (int k = 1; k < strlen(cuv) / 2 + 1; k++) { ^ kps.cpp:61:29: error: 'strncpy' was not declared in this scope strncpy(pred, cuv, k); ^ kps.cpp:65:49: error: 'strcmp' was not declared in this scope if (strcmp(pred, cuv + (strlen(cuv) - k)) == 0) { ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema kps 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ă.