Problem
给定一个包含 n 个顶点和 m 条有向边的图。每个顶点包含一些小写拉丁字母。
让我们将路径的长度定义为沿着这条路径遇到某个字母的最大次数。例如,如果路径中的字母组成字符串“abaca”,则该路径的值为3。
你的任务——找到具有最大值的路径。
输入:
第一行包含两个整数n,m(1 ≤ n, m ≤ 200000),表示该图有n个顶点和m条有向边。
第二行包含字符串 s,仅由小写拉丁字母组成。符号编号 i —这是写在最上面的数字 i 的字母。
然后是 m 行。这些行中的每一行都包含两个整数 x, y (1 ≤ x, y ≤ n),描述从 x 到 y 的有向边。注意x可以等于y,x和y之间可以有多条边。
此外,图形可能会断开连接。
输出:
打印一个数字——最大路径长度。如果存在具有任意大值的路径,则打印 -1。
示例:
<正文>
输入 |
输出 |
5 4
蕉麻
1 2
1 3
34
4 5 |
3 |
6 6
xzyabc
1 2
3 1
23
5 4
4 3
6 4 |
-1 |
10 14
xzyzyzyzqx
1 2
24
3 5
4 5
26
68
6 5
2 10
39
10 9
46
1 10
28
37 |
4 |
表>