[BOJ 3033] 가장 긴 문자열
View as PDF
Submit solution
Points:
4
Time limit:
1.0s
Memory limit:
256M
Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text
상근이는 꿈에서 길이가 L인 문자열을 외웠다.
꿈에서 깬 상근이는 이 문자열을 종이에 적었다. 종이를 적던 중에 어떤 문자열은 두 번 이상 등장하는 것 같은 느낌을 받았다.
문자열이 주어졌을 때, 두 번 이상 등장한 부분 문자열 중 가장 길이가 긴 것을 찾는 프로그램을 작성하시오. (부분문자열은 겹쳐서 등장할 수도 있다)
입력 형식
첫째 줄에 L이 주어진다. (1 ≤ L ≤ 200,000) 다음 줄에는 길이가 L이면서 알파벳 소문자로 이루어진 문자열이 주어진다.
출력 형식
첫째 줄에 두 번 이상 등장하는 부분 문자열 중 길이가 가장 긴 것의 길이를 출력한다. 만약 그러한 문자열이 없을 때는 0을 출력한다.
예제 입력 1
11
sabcabcfabc
예제 출력 1
3
예제 입력 2
18
trutrutiktiktappop
예제 출력 2
4
예제 입력 3
6
abcdef
예제 출력 3
0
Comments