#1087
Se consideră un şir de cuvinte separate două câte două printr-un spaţiu. Fiecare cuvânt este caracterizat prin numărul de ordine care reprezintă poziţia lui în şirul de cuvinte (primul cuvânt are numărul de ordine 1
). Unui cuvânt i se pot aplica în mod repetat următoarele transformări: primul caracter al cuvântului (cel mai din stânga) se şterge de acolo şi se adaugă după ultimul caracter din cuvânt. Astfel, dintr-un cuvânt s
cu k
caractere se pot obţine alte k-1
cuvinte pe care le numim cuvinte obţinute din transformarea cuvântului s
. De exemplu, dintr-un cuvânt format din 4
caractere c1c2c3c4
, cuvintele obţinute prin transformarea lui sunt: c2c3c4c1
, c3c4c1c2
, c4c1c2c3
.
Se caută în şirul de cuvinte prima pereche de cuvinte vecine (a,b)
, în care al doilea cuvânt din pereche (cuvântul b)
este identic cu un cuvânt obţinut din transformarea lui a
. Dacă există o astfel de pereche, se şterge cuvântul b
din şir. Prin ştergerea cuvântului b
din şir, acesta va avea mai puţin cu un cuvânt! Se repetă operaţia de căutare de mai sus până când în şirul rămas nu mai există o pereche (a,b)
de cuvinte vecine, astfel încât b
să fie obţinut prin transformarea lui a
.
Se ştie că pe parcursul modificărilor, cuvintele nu-şi schimbă numerele de ordine pe care le-au avut iniţial.
Scrieţi un program care să citească şirul de cuvinte şi să afişeze:
a) numărul de ordine al primului cuvânt şters sau valoarea 0
în cazul în care nu se şterge niciun cuvânt
b) numerele de ordine ale cuvintelor rămase după finalizarea operaţiilor de modificare.
OJI 2010, Clasa a VII-a
ID | Utilizator | Problema | Data încărcării | Stare | ||
---|---|---|---|---|---|---|
Cuvinte4 | 10 Octombrie 2022, 20:05 | Evaluare finalizată | 100 |