Pentru a exprima starea de spirit în comunicarea online sunt utilizate emoticonurile (cunoscute şi sub denumirea de smileys). În mod text, un smiley este reprezentat ca o secvenţă de caractere. În problema noastră, un smiley este o secvenţă care îndeplineşte simultan următoarele condiţii:
• secvenţa începe cu un caracter din mulţimea {′:′,′;′,′>′,′8′}
• urmează zero, unul sau mai multe caractere ′-′ (minus)
• se termină cu unul, două sau mai multe caractere identice din mulţimea {′(′, ′)′, ′[′, ′]′, ′D′, ′P′, ′O′, ′X′, ′3′}
De exemplu, fiecare dintre următoarele secvenţe este un smiley:
:)
:-(((
;------------]
:-O
Următoarele secvenţe nu reprezintă un smiley (deşi e posibil să conţină un smiley):
:-)] (parantezele finale nu sunt identice)
-) (lipseşte caracterul de început
::-[ (are două caractere : la început)
Cerinţă
Dat fiind un text, să se determine numărul de smileys care apar în text.
Date de intrare
Fişierul de intrare smiley.in conţine un text scris pe una sau mai multe linii.
Date de ieşire
Fişierul de ieşire smiley.out va conţine o singură linie pe care va fi scris un singur număr natural reprezentând numărul de smileys care apar în text.
Restricţii
• Orice linie din fişierul de intrare conţine cel mult 250 de caractere.
• Textul conţine cel mult 10000 de caractere.
Exemple
smiley.in
smiley.out
Explicaţii
Salut! :) Ce mai faci? :----)))
Ai aflat noutatile? ;-P
-(eu ieri am aflat)
>))))))!!!!!!!!
4
Cele 4 secvenţe smiley din text sunt:
:)
:----)))
;-P
>))))))