Təkrarlanan altardıcıllıqlar#3624

Təkrarlanan altardıcıllıqlar

10 saniyə
64 meqabayt
Asan

Siz dünyada səyyahət edən xazinə ovçularısınız. Axır ki, sizin əlinizə xəzinənin gizlədildiyini göstərən qədim əl yazısı (manuskript) keçdi. İlk baxışda əl yazısının mətni mənasız simvollar sətri kimi görünür. Əslində isə xəzinənin yeri mətndə təkrarlanan ən böyük altardıcıllıq şəklində gizlədilmişdir.

Gəlin sətirdə təkrarlanan ən böyük altardıcıllığın nə olduğunu müəyyənləşdirək. Əvvəlcə verilmiş S sətrini iki F və R hissəyə ayıraq. F və R sətirlərinin ən böyük ortaq altardıcıllığını (F və R-in ən uzun altardıcıllığı olan L sətrini) tapaq. S sətrini iki hissəyə ayırmağın bir neçə üsulu olduğunu nəzərə alsaq, onda bir necə mümkün L altardıcıllığı mövcuddur. Təkrarlanan ən böyük altardıcıllıq onlardan ən böyüyüdür. Məsələn, "ABCABCABAB" sətrinin təkrarlanan ən böyük altardıcıllığı "ABAB"-dır, çünki "ABCABCABAB" sətrini "ABCABC" və "ABAB" altsətirlərinə ayırmaqla əldə olunur.

Sizdən təkrarlanan ən böyük altardıcıllığı təyin edərək gizlədilmiş xəzinəni tapmaq tələb olunur!

Giriş

Giriş verilənləri bir neçə testdən ibarətdir. Hər bir test bir sətirdən ibarətdir və 300-ə qədər böyük hərfdən ibarət ola bilər. Zəmanət verilir ki, hər bir giriş sətri ən azı bir təkrarlanan alt ardıcıllıq ehtiva edir.

Sonuncu sətirdə "#END" verilir və emal edilmir.

Çıxış

Hər bir test üçün ayrı sətirdə təkrarlanan ən böyük altardıcıllığı vermək tələb olunur. Əgər bu cür altardıcıllıqlardan bir neçəsi varsa, onlardan hər hansı birini vermək olar.

Nümunələr

Nümunə 1

Loading
Loading