시간 제한
메모리 제한
시간 제한
0.5초
메모리 제한
128 MB
개발자 Cubelover는 Whitespace로 작성한 프로그램을 더 쉽게 다루기 위해 Cubelang이라는 보조 언어를 만들었다. Cubelang으로 코딩하다 보니 이 언어에 맞는 새 텍스트 에디터가 필요해졌고, 긴 작업 끝에 Cubeditor라는 에디터를 완성했다.
일반적인 텍스트 에디터의 찾기 기능은 찾는 문자열이 한 번만 등장해도 결과를 보여 준다. 그러나 Cubelang에 필요한 기능은, 주어진 문자열 안에서 같은 부분 문자열이 두 번 이상 등장하는 경우만 찾는 것이다. 두 등장은 서로 겹쳐도 된다.
예를 들어 abcdabc에서 abc는 두 번 등장하므로 찾을 수 있지만, abcd는 한 번만 등장하므로 찾을 수 없다.
주어진 문자열에서 두 번 이상 등장하는 부분 문자열 중 가장 긴 것의 길이를 구하라.
예를 들어 abcabcabc에서는 abc가 세 번 등장하고, abcabc도 두 번 등장한다. 하지만 abcabca는 한 번만 등장한다. 따라서 조건을 만족하는 가장 긴 부분 문자열은 abcabc이고, 그 길이는 6이다.
첫째 줄에 문자열이 주어진다. 문자열의 길이는 최대 5,000이고, 문자열은 영어 소문자로만 이루어져 있다.
입력으로 주어진 문자열에서 두 번 이상 등장하는 부분 문자열의 길이 중 최댓값을 출력한다. 그런 부분 문자열이 없으면 0을 출력한다.