#1093
Text
Ion Petre, ca oricare adolescent, este pasionat atât de jocuri, cât şi de informatică. Ultimul astfel de joc este acela de a elimina dintr-un text cuvinte astfel încât fiecare cuvânt rămas să fie urmat de un cuvânt care începe cu aceeaşi literă cu care se termină cuvântul precedent. Face excepţie de la această regulă numai ultimul cuvânt.
Ion Petre, ca oricare adolescent, este pasionat atât de jocuri, cât şi de informatică. Ultimul astfel de joc este acela de a elimina dintr-un text cuvinte astfel încât fiecare cuvânt rămas să fie urmat de un cuvânt care începe cu aceeaşi literă cu care se termină cuvântul precedent. Face excepţie de la această regulă numai ultimul cuvânt.
Pentru un text dat, se cere să se afişeze numărul de cuvinte din text, apoi numărul minim de cuvinte ce pot fi eliminate astfel încât în textul rămas orice cuvânt (cu excepţia ultimului) să se termine cu aceeaşi literă cu care începe cuvântul următor, iar în final să se afişeze cuvintele din text rămase după eliminare, fiecare cuvânt fiind afişat pe câte o linie.
Pentru un text dat, se cere să se afişeze numărul de cuvinte din text, apoi numărul minim de cuvinte ce pot fi eliminate astfel încât în textul rămas orice cuvânt (cu excepţia ultimului) să se termine cu aceeaşi literă cu care începe cuvântul următor, iar în final să se afişeze cuvintele din text rămase după eliminare, fiecare cuvânt fiind afişat pe câte o linie.
OJI 2010, Clasa a X-a
Problema | Text | Operații I/O |
text.in /text.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
Id soluție | #23775902 | Utilizator | |
Fișier | text.cpp | Dimensiune | 1.57 KB |
Data încărcării | 27 August 2020, 16:30 | Scor / rezultat | 100 puncte |
text.cpp: In function 'int main()': text.cpp:42:14: warning: array subscript has type 'char' [-Wchar-subscripts] bestWord[c] = -1; ^ text.cpp:47:33: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < words.size(); i++) ^ text.cpp:51:22: warning: array subscript has type 'char' [-Wchar-subscripts] if (bestWord[w.head] != -1) ^ text.cpp:53:41: warning: array subscript has type 'char' [-Wchar-subscripts] w.chainLength = words[bestWord[w.head]].chainLength + 1; ^ text.cpp:54:43: warning: array subscript has type 'char' [-Wchar-subscripts] w.previousWord = &words[bestWord[w.head]]; ^ text.cpp:57:22: warning: array subscript has type 'char' [-Wchar-subscripts] if (bestWord[w.tail] == -1 || words[bestWord[w.tail]].chainLength < w.chainLength) ^ text.cpp:57:54: warning: array subscript has type 'char' [-Wchar-subscripts] if (bestWord[w.tail] == -1 || words[bestWord[w.tail]].chainLength < w.chainLength) ^ text.cpp:58:19: warning: array subscript has type 'char' [-Wchar-subscripts] bestWord[w.tail] = i; ^ text.cpp:66:17: warning: array subscript has type 'char' [-Wchar-subscripts] if (bestWord[c]!=-1 && maxLength < words[bestWord[c]].chainLength) ^ text.cpp:66:54: warning: array subscript has type 'char' [-Wchar-subscripts] if (bestWord[c]!=-1 && maxLength < words[bestWord[c]].chainLength) ^ text.cpp:68:32: warning: array subscript has type 'char' [-Wchar-subscripts] maxLength = words[bestWord[c]].chainLength; ^ text.cpp:69:34: warning: array subscript has type 'char' [-Wchar-subscripts] chainStart = &words[bestWord[c]]; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | Corect | 10 | 10 | ||
2 | 0 secunde | Corect | 10 | 10 | ||
3 | 0 secunde | Corect | 10 | 10 | ||
4 | 0 secunde | Corect | 10 | 10 | ||
5 | 0 secunde | Corect | 10 | 10 | ||
6 | 0 secunde | Corect | 10 | 10 | ||
7 | 0 secunde | Corect | 10 | 10 | ||
8 | 0.004 secunde | Corect | 10 | 10 | ||
9 | 0 secunde | Corect | 10 | 10 | ||
10 | 0 secunde | Corect | 10 | 10 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Text 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ă.