#P1407. [国家集训队] 稳定婚姻

    ID: 401 Type: RemoteJudge 1000ms 125MiB Tried: 4 Accepted: 4 Difficulty: 5 Uploaded By: Tags>强连通分量,缩点Tarjan二分图

[国家集训队] 稳定婚姻

题目描述

我们已知 nn 对夫妻的婚姻状况,称第 ii 对夫妻的男方为 BiB_i,女方为 GiG_i。若某男 BiB_i 与某女 GjG_j 曾经交往过(无论是大学,高中,亦或是幼儿园阶段,iji \le j),则当某方与其配偶(即 BiB_iGiG_iBjB_jGjG_j)感情出现问题时,他们有私奔的可能性。不妨设 BiB_i 和其配偶 GiG_i 感情不和,于是 BiB_iGjG_j 旧情复燃,进而 BjB_j 因被戴绿帽而感到不爽,联系上了他的初恋情人 GkG_k ……一串串的离婚事件像多米诺骨牌一般接踵而至。若在 BiB_iGiG_i 离婚的前提下,这 2n2n 个人最终依然能够结合成 nn 对情侣,那么我们称婚姻 ii 为不安全的,否则婚姻 ii 就是安全的。

给定所需信息,你的任务是判断每对婚姻是否安全。

输入格式

第一行为一个正整数 nn,表示夫妻的对数;

以下 nn 行,每行包含两个字符串,表示这 nn 对夫妻的姓名(先女后男),由一个空格隔开;

n+2n+2 行包含一个正整数 mm,表示曾经相互喜欢过的情侣对数;

以下 mm 行,每行包含两个字符串,表示这 mm 对相互喜欢过的情侣姓名(先女后男),由一个空格隔开。

输出格式

输出文件共包含 nn 行,第 ii 行为 Safe(如果婚姻 ii 是安全的)或 Unsafe(如果婚姻 ii 是不安全的)。

2
Melanie Ashley
Scarlett Charles
1
Scarlett Ashley
Safe
Safe
2
Melanie Ashley
Scarlett Charles
2
Scarlett Ashley
Melanie Charles
Unsafe
Unsafe

提示

对于 20%20\% 的数据,n20n \le 20

对于 40%40\% 的数据,n100n \le 100m400m \le 400

对于 100%100\% 的数据,所有姓名字符串中只包含英文大小写字母,大小写敏感,长度不大于 88,保证每对关系只在输入文件中出现一次,输入文件的最后 mm 行不会出现未在之前出现过的姓名,这 2n2n 个人的姓名各不相同,1n40001 \le n \le 40000m200000 \le m \le 20000