#1493
Masca
Se consideră alfabetul compus din literele mici, de la a
la z
, fără diacritice. Se numeşte cuvânt un şir finit, eventual vid, de litere din alfabet. Se numeşte mască un şir de caractere din alfabet având eventual în plus caracterele ?
şi *
cu următoarea semnificaţie: caracterul ?
înlocuieşte oricare din literele de la a
la z
(o singură literă) iar caracterul *
înlocuieşte un cuvânt oarecare, eventual vid, format cu litere de la a
la z
.
Spre exemplu avem masca a?b*c
. Dacă avem 3
cuvinte şi anume abbc
, acbaac
şi abac
atunci primele 2
se potrivesc cu masca.
Considerându-se o listă de cuvinte, să se determine:
a) Numărul de cuvinte distincte.
b) Numărul de cuvinte distincte ce se potrivesc cu o mască dată, adică se pot obţine prin înlocuirea caracterelor ?
şi *
din mască.
Olimpiada locală de Informatică, Prahova, 2016
Problema | Masca | Operații I/O |
masca.in /masca.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 4 MB
/
Stivă 2 MB
|
Id soluție | #36788746 | Utilizator | |
Fișier | masca.cpp | Dimensiune | 1.27 KB |
Data încărcării | 22 Mai 2022, 16:03 | Scor / rezultat | Eroare de compilare |
masca.cpp: In function 'int main()': masca.cpp:23:5: error: reference to 'cin' is ambiguous cin.getline(s , 501); ^ masca.cpp:3:10: note: candidates are: std::ifstream cin ifstream cin("cuvinte6.in"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from masca.cpp:1: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ masca.cpp:24:5: error: reference to 'cin' is ambiguous cin >> cer; ^ masca.cpp:3:10: note: candidates are: std::ifstream cin ifstream cin("cuvinte6.in"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from masca.cpp:1: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ masca.cpp:35:13: error: reference to 'cout' is ambiguous cout << cate; ^ masca.cpp:4:10: note: candidates are: std::ofstream cout ofstream cout("cuvinte6.out"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from masca.cpp:1: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^ masca.cpp:43:50: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(strlen(a[i]) + strlen(a[i + 1]) > maxi) ^ masca.cpp:50:9: error: reference to 'cout' is ambiguous cout << cuv1 << " " << cuv2; ^ masca.cpp:4:10: note: candidates are: std::ofstream cout ofstream cout("cuvinte6.out"); ^ In file included from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:74:0, from masca.cpp:1: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Masca 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ă.