QOJ.ac

QOJ

Límite de tiempo: 2 s Límite de memoria: 512 MB Puntuación total: 100 Hackeable ✓

#6484. 美丽的自动机

Estadísticas

Oleksandr 是一个字符串爱好者。他最喜欢的数据结构是后缀自动机。

考虑一个由小写英文字母组成的字符串 $s$。$s$ 的后缀自动机是最小的(拥有最少顶点数的)有向无环图 $G$,每条边 $e$ 上写有一个字母 $l(e)$,并有一个固定的起始顶点 $v_0$,使得: $$\{w \mid w \text{ 是 } s \text{ 的子串}\} = \{l(e_1)l(e_2)\dots l(e_k) \mid (e_1, e_2, \dots, e_k) \text{ 是 } G \text{ 中从 } v_0 \text{ 出发的一条路径}\}。$$

Oleksandr 对后缀自动机的喜爱超过了任何其他图。如果一个有向无环图 $G$ 可以通过在每条边上标注一个小写英文字母并选择一个起始顶点 $v_0$,使得 $G$ 成为字符串 $s$ 的后缀自动机,那么他称该图 $G$ 为 $s$-beautiful。Oleksandr 喜欢字典序较小的字符串,因此请你帮他对于给定的图 $G$,找到字典序最小的字符串 $s$,使得 $G$ 是 $s$-beautiful 的。

输入格式

第一行包含两个整数 $n$ 和 $m$ ($1 \le n \le 2000, 1 \le m \le 3000$),分别表示图 $G$ 的顶点数和边数。接下来的 $m$ 行,每行包含两个整数 $v$ 和 $u$ ($1 \le v, u \le n, v \neq u$),表示一条从 $v$ 到 $u$ 的有向边。保证 $G$ 是无环的。

输出格式

输出一行,包含字典序最小的由小写英文字母组成的字符串 $s$,使得 $G$ 是 $s$-beautiful 的。如果不存在这样的字符串,输出 $-1$。

样例

样例输入 1

2 1
1 2

样例输出 1

a

样例输入 2

4 5
1 2
2 3
1 4
2 4
3 4

样例输出 2

aab

样例输入 3

5 5
1 2
1 3
2 3
3 4
4 5

样例输出 3

abab

样例输入 4

4 5
1 2
1 3
1 4
2 3
4 3

样例输出 4

-1

说明

前三个样例测试的后缀自动机如下图所示:

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.