AT_tenka1_2016_qualA_c 山田山本問題
题目描述
[problemUrl]: https://atcoder.jp/contests/tenka1-2016-quala/tasks/tenka1_2016_qualA_c
Watanabe-kun 在 Tenkaichi 公司工作,使用聊天工具进行内部交流。聊天工具有补全功能,当他尝试输入以 @ 开头的账户名时,会按字典顺序显示一个具有匹配前缀的账户名候选列表。
但是,当渡边君试图从候选完成项中选择 @yamamoto 时,他经常会误选 @yamada。这是因为 @yamada 在字典顺序中比 @yamamoto 小,在输入 `@yama`时显示在候选字的最前面。
渡边君有一个奇怪的特技:他可以随心所欲地重新排列字母顺序。例如,如果渡边君使用他的特殊技能将字母顺序改为 abcefghijklmdnopqrstuvwxyz,`m`就会小于`d`,而 @yamamoto 在词法顺序上就会小于 @yamada。
给你 $ N $ 个请求,让账户名 $ A_i $ 按词法顺序小于账户名 $ B_i$。找出按渡边君的专长排序的字母顺序,使所有给定的要求都得到满足。如果满足要求的字母顺序不止一个,请找出重新排列前按词典顺序排列的最小字母顺序。
输入格式
输入由标准输入提供,格式如下
> $ n $
> $ a_1 $ $ b_1 $
> $ a_2 $ $ b_2 $
> $\vdots $
> $ a_n $ $ b_n $
输出格式
在一行中输出满足条件的最小字母顺序(按词序排列)。
如果不存在这样的字母顺序,则输出 $-1$。
说明/提示
- $ 1\leq N\leq1000 $
- $ A_i\neq B_i $
- $ 1\leq|A_i|,|B_i|\leq\ 1000 $
- $ A_i,B_i $ 由小写英文字母组成