#2481. Change Usernames
Change Usernames
[ABC285D] Change Usernames
题目描述
你运营着一个网络服务,该服务有 名用户。
第 个用户的当前用户名是 ,但他希望将其更改为 。 在这里, 是不同的, 也是不同的。
通过适当地确定更改用户名的顺序,判断是否可以满足以下所有条件,将所有用户的用户名更改为他们希望的用户名:
- 用户名的更改每次只能进行一个用户
- 每个用户只能更改一次用户名
- 在尝试更改用户名时,不能更改为其他用户正在使用的用户名
输入格式
输入将以以下格式从标准输入中给出。
N
S_1 T_1
S_2 T_2
...
S_N T_N
输出格式
如果能够满足所有条件并按用户希望的方式更改所有用户名,请输出 Yes
;如果不能,请输出 No
。
样例 #1
样例输入 #1
2
b m
m d
样例输出 #1
Yes
样例 #2
样例输入 #2
3
a b
b c
c a
样例输出 #2
No
样例 #3
样例输入 #3
5
aaa bbb
yyy zzz
ccc ddd
xxx yyy
bbb ccc
样例输出 #3
Yes
提示
制約
- 是由小写英文字母组成的,长度在 1 到 8 个字符之间的字符串
- 是不同的
- 是不同的
Sample Explanation 1
第一个用户的当前用户名是 b
,他希望更改为 m
。第二个用户的当前用户名是 m
,他希望更改为 d
。首先,将第二个用户的用户名从 m
更改为 d
,然后更改第一个用户的用户名从 b
到 m
,这样可以在满足条件的情况下进行更改。最初,第二个用户的用户名是 m
,因此不能将第一个用户的用户名更改为相同的 m
。
Sample Explanation 2
第一个用户的当前用户名是 a
,他希望更改为 b
。第二个用户的当前用户名是 b
,他希望更改为 c
。第三个用户的当前用户名是 c
,他希望更改为 a
。无法在满足条件的情况下更改用户名。