codeforces#P718E. Matvey's Birthday
Matvey's Birthday
Description
Today is Matvey's birthday. He never knows what to ask as a present so friends gave him a string s of length n. This string consists of only first eight English letters: 'a', 'b', ..., 'h'.
First question that comes to mind is: who might ever need some string? Matvey is a special boy so he instantly found what to do with this string. He used it to build an undirected graph where vertices correspond to position in the string and there is an edge between distinct positions a and b (1 ≤ a, b ≤ n) if at least one of the following conditions hold:
- a and b are neighbouring, i.e. |a - b| = 1.
- Positions a and b contain equal characters, i.e. sa = sb.
Then Matvey decided to find the diameter of this graph. Diameter is a maximum distance (length of the shortest path) among all pairs of vertices. Also, Matvey wants to find the number of pairs of vertices such that the distance between them is equal to the diameter of the graph. As he is very cool and experienced programmer he managed to solve this problem very fast. Will you do the same?
The first line of the input contains a single integer n (2 ≤ n ≤ 100 000) — the length of the string.
The second line contains the string s itself. It's guaranteed that s consists of only first eight letters of English alphabet.
Print two integers — the diameter of the graph and the number of pairs of positions with the distance equal to the diameter.
Input
The first line of the input contains a single integer n (2 ≤ n ≤ 100 000) — the length of the string.
The second line contains the string s itself. It's guaranteed that s consists of only first eight letters of English alphabet.
Output
Print two integers — the diameter of the graph and the number of pairs of positions with the distance equal to the diameter.
Samples
3
abc
2 1
7
aaabaaa
2 4
Note
Consider the second sample.
The maximum distance is 2. It's obtained for pairs (1, 4), (2, 4), (4, 6) and (4, 7).