#2191
lant2
Ion este un lingvist pasionat. Recent el a descoperit un text scris într-o limbă necunoscută. Textul este scris pe mai multe linii şi este format din cuvinte scrise cu litere mici din alfabetul latin, separate prin spaţii sau/şi semne de punctuaţie (,:;.!?-
). Ion a fost frapat că există multe similitudini între cuvintele din text. Fiind foarte riguros, Ion definește similitudinea a două cuvinte după cum urmează. Fie c1
şi c2
două cuvinte. Cuvântul c1
poate fi obţinut din cuvântul c2
printr-o succesiune de operaţii elementare. Operaţiile elementare ce pot fi folosite sunt:
move(c1, c2)
– Mută primul caracter din c1
la sfârşitul cuvântului c2
(de exemplu, dacă c1="alba"
şi c2="neagra"
, după efectuarea operaţiei move(c1, c2)
, c1
va fi "lba"
, iar c2
va fi "neagraa"
)insert(c1, x)
– Inserează caracterul x
la începutul lui c1
(de exemplu, dacă c1="alba"
şi x='b'
, după executarea operaţiei insert(c1,x)
, c1
va fi "balba"
)delete(c1)
– Şterge primul caracter din c1
(de exemplu, dacă c1="alba"
, după executarea operaţiei delete(c1)
, c1
va fi "lba"
)Definim similitudinea dintre c1
şi c2
ca fiind numărul minim de operații insert
şi delete
ce trebuie să fie executate pentru a transforma cuvântul c1
în cuvântul c2
(operațiile move
nu se numără).
Fie c0
primul cuvânt din text. Începând cu c0
putem construi lanțuri de k
-similitudine.
Un lanţ de k
-similitudine este o succesiune de cuvinte distincte din text cu următoarele proprietăți:
x
apare în lanţ înaintea cuvântului y
, atunci prima apariţie a lui x
în text precedă prima apariţie a lui y
în text;x
şi y
sunt cuvinte consecutive în lanţ (în ordinea x y
), atunci similitudinea dintre x
şi y
este mai mică sau egală decât k
;Scrieţi un program care să determine numărul de lanţuri de k
-similitudine care încep cu c0
.
Olimpiada județeană de informatică, 2005
ID | Utilizator | Problema | Data încărcării | Stare | ||
---|---|---|---|---|---|---|
lant2 | 19 Noiembrie 2024, 11:08 | Evaluare finalizată | 100 | |||
lant2 | 19 Noiembrie 2024, 11:07 | Evaluare finalizată | 0 | |||
lant2 | 10 Octombrie 2024, 12:54 | Evaluare finalizată | 20 | |||
lant2 | 28 Septembrie 2024, 19:56 | Evaluare finalizată | 100 | |||
lant2 | 28 Septembrie 2024, 19:54 | Evaluare finalizată | 20 | |||
lant2 | 28 Septembrie 2024, 18:42 | Evaluare finalizată | 0 | |||
lant2 | 27 Septembrie 2024, 05:32 | Evaluare finalizată | 100 | |||
lant2 | 06 Septembrie 2024, 16:35 | Evaluare finalizată | 100 | |||
lant2 | 06 Septembrie 2024, 16:20 | Evaluare finalizată | 40 | |||
lant2 | 06 Septembrie 2024, 14:32 | Evaluare finalizată | 40 | |||
lant2 | 02 Septembrie 2024, 17:13 | Evaluare finalizată | 100 | |||
lant2 | 02 Septembrie 2024, 17:13 | Evaluare finalizată | 0 | |||
lant2 | 02 Septembrie 2024, 17:09 | Evaluare finalizată | 20 | |||
lant2 | 25 August 2024, 10:50 | Evaluare finalizată | 100 | |||
lant2 | 25 August 2024, 10:37 | Evaluare finalizată | 20 | |||
lant2 | 16 August 2024, 01:37 | Evaluare finalizată | 40 | |||
lant2 | 14 August 2024, 18:31 | Evaluare finalizată | 100 | |||
lant2 | 14 August 2024, 18:31 | Evaluare finalizată | 0 | |||
lant2 | 01 August 2024, 12:54 | Evaluare finalizată | E.C | |||
lant2 | 29 Iulie 2024, 13:05 | Evaluare finalizată | 100 | |||
lant2 | 23 Iulie 2024, 16:31 | Evaluare finalizată | 100 | |||
lant2 | 10 Iulie 2024, 14:04 | Evaluare finalizată | 100 | |||
lant2 | 10 Iulie 2024, 14:03 | Evaluare finalizată | 70 | |||
lant2 | 10 Iulie 2024, 13:27 | Evaluare finalizată | 0 | |||
lant2 | 31 Mai 2024, 18:57 | Evaluare finalizată | 100 | |||
lant2 | 31 Mai 2024, 18:57 | Evaluare finalizată | 100 | |||
lant2 | 19 Mai 2024, 21:17 | Evaluare finalizată | 100 | |||
lant2 | 19 Mai 2024, 21:16 | Evaluare finalizată | 0 | |||
lant2 | 18 Aprilie 2024, 13:51 | Evaluare finalizată | 100 | |||
lant2 | 16 Aprilie 2024, 22:50 | Evaluare finalizată | 100 | |||
lant2 | 10 Aprilie 2024, 22:38 | Evaluare finalizată | 100 | |||
lant2 | 10 Aprilie 2024, 22:37 | Evaluare finalizată | 10 | |||
lant2 | 10 Aprilie 2024, 22:36 | Evaluare finalizată | E.C | |||
lant2 | 10 Aprilie 2024, 22:22 | Evaluare finalizată | 100 | |||
lant2 | 10 Aprilie 2024, 22:22 | Evaluare finalizată | E.C | |||
lant2 | 10 Aprilie 2024, 12:36 | Evaluare finalizată | 100 | |||
lant2 | 10 Aprilie 2024, 12:36 | Evaluare finalizată | 0 | |||
lant2 | 10 Aprilie 2024, 12:35 | Evaluare finalizată | 100 | |||
lant2 | 10 Aprilie 2024, 12:31 | Evaluare finalizată | 0 | |||
lant2 | 10 Aprilie 2024, 12:28 | Evaluare finalizată | 0 | |||
lant2 | 10 Aprilie 2024, 12:27 | Evaluare finalizată | 0 | |||
lant2 | 10 Aprilie 2024, 11:32 | Evaluare finalizată | E.C | |||
lant2 | 10 Aprilie 2024, 10:14 | Evaluare finalizată | 100 | |||
lant2 | 10 Aprilie 2024, 09:54 | Evaluare finalizată | E.C | |||
lant2 | 09 Aprilie 2024, 11:15 | Evaluare finalizată | 100 | |||
lant2 | 09 Aprilie 2024, 10:34 | Evaluare finalizată | 20 | |||
lant2 | 03 Aprilie 2024, 13:28 | Evaluare finalizată | 100 | |||
lant2 | 14 Martie 2024, 12:12 | Evaluare finalizată | 100 | |||
lant2 | 14 Martie 2024, 10:47 | Evaluare finalizată | 100 | |||
lant2 | 13 Martie 2024, 18:21 | Evaluare finalizată | 0 |