페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#3710

가장 긴 문자열 1s 128MB

문제

정올이는 꿈에서 길이가 L인 문자열을 외웠다.

 

꿈에서 깬 정올이는 이 문자열을 종이에 적었다. 

종이를 적던 중에 어떤 문자열은 두 번 이상 등장하는 것 같은 느낌을 받았다.

 

문자열이 주어졌을 때, 두 번 이상 등장한 부분 문자열 중 

가장 길이가 긴 것을 찾는 프로그램을 작성하시오. (부분문자열은 일부가 겹쳐서 등장할 수도 있다)

 


입력

첫째 줄에 L이 주어진다. (1 ≤ L ≤ 200,000) 다음 줄에는 길이가 L이면서 

알파벳 소문자로 이루어진 문자열이 주어진다.

 


출력

첫째 줄에 두 번 이상 등장하는 부분 문자열 중 길이가 가장 긴 것의 길이를 출력한다. 

만약 그러한 문자열이 없을 때는 0을 출력한다.

 


예제 #1

11

sabcabcfabc
3

예제 #2

18

trutrutiktiktappop
4

예제 #3

6

abcdef
0

출처

COCI 2006/2007 > Contest #5 6번

로그인해야 코드를 작성할 수 있어요.