Фермер Джон идёт по дорожке и думает, что не может потеряться.
Вдоль дороги имеется \(N\) ферм (\(1 \leq N \leq 100\)).
На фермах нет номеров, поэтому ФД тяжело ориентироваться.
Зато на каждой ферме имеется цветной почтовый ящик со стороны дороги.
поэтому ФД надеется, что если он посмотрит на цвета ближайших почтовых
ящиков, он сможет однозначно определить, где он находится.
Каждый цвет почтового ящика обозначается буквой в интервале A..Z,
таким образом, последовательность \(N\) почтовых ящиков вдоль дороги
представляется строкой длины \(N\), содержащей символы в интервале A..Z.
Некоторые почтовые ящики могут иметь одинаковые цвета. ФД хочет узнать
минимальное число \(K\) такое, что если он посмотрит на любую последовательность
из \(K\) последовательных ящиков, он уникально определит местоположение этой
последовательности на дороге.
Например, предположим, что последовательность ящиков вдоль дороги есть 'ABCDABC'.
ФД не может выбрать \(K=3\), поскольку если он увидит 'ABC', то имеется два расположения
такой строки вдоль дороги. Минимальное значение \(K\), которое работает, \(K=4\), поскольку
любые последовательные 4 символа уникально определяют его позицию вдоль дороги.
ФОРМАТ ВВОДА (файл whereami.in):
Первая строка ввода содержит \(N\), вторая строка содержит строку из \(N\) символов,
каждый в интервале A..Z.
ФОРМАТ ВЫВОДА (файл whereami.out):
Выведите строку, содержащую одно целое число, указывающее минимальное значение \(K\),
которое решает задачу ФД.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
7 ABCDABC
|
4
|