CF1998D.Determine Winning Islands in Race
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
MOOOOOOOOOOOOOOOOO
—— Bessie the Cow,《The Art of Racing on Islands》
农夫 John 的两头奶牛,Bessie 和 Elsie,计划在 n 个岛屿上进行比赛。有 n−1 条主桥,连接着每个岛屿 i 和岛屿 i+1,其中 1≤i≤n−1。此外,还有 m 条备选桥。Elsie 可以使用主桥和备选桥,而 Bessie 只能使用主桥。所有桥都是单向的,只能从编号较小的岛屿通向编号较大的岛屿。
一开始,Elsie 在岛屿 1,Bessie 在岛屿 s。两头奶牛轮流行动,Bessie 先行动。假设奶牛当前在岛屿 i,在她的回合,如果存在从岛屿 i 通向岛屿 j 的桥,则她可以移动到岛屿 j。然后,岛屿 i 会坍塌,所有与岛屿 i 相连的桥也会坍塌。还需注意以下规则:
- 如果没有桥连接岛屿 i 到其他岛屿,则岛屿 i 坍塌,这头奶牛被淘汰出比赛。
- 如果另一头奶牛也在岛屿 i,那么在这头奶牛移动到其他岛屿后,岛屿坍塌,另一头奶牛也被淘汰出比赛。
- 岛屿或桥坍塌后,任何奶牛都不能再使用它们。
- 如果一头奶牛被淘汰,她在之后的比赛中将跳过回合。
比赛在任意一头奶牛到达岛屿 n 时结束。可以证明,无论奶牛们采取何种策略,至少有一头奶牛能到达岛屿 n。只有当 Bessie 先到达岛屿 n 时,她才算获胜。
对于每个 1≤s≤n−1,判断如果 Bessie 从岛屿 s 出发,她是否能获胜。假设两头奶牛都采取最优策略以争取各自的胜利。
输入格式
第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。
每个测试用例的第一行包含两个整数 n 和 m(2≤n≤2⋅105,0≤m≤2⋅105),分别表示岛屿数量和备选桥数量。
接下来的 m 行,每行包含两个整数 u 和 v(1≤u<v≤n),表示一条备选桥连接的岛屿。保证所有备选桥互不相同,且不会与主桥重合。
保证所有测试用例中 n 的总和以及 m 的总和均不超过 2⋅105。
输出格式
对于每个测试用例,输出一个长度为 n−1 的二进制字符串,表示每个起点 s 的结果。如果 Bessie 能获胜,则第 i 个字符为 1,否则为 0。
输入输出样例
输入#1
5 6 0 6 1 2 6 6 1 1 5 10 4 1 3 1 6 2 7 3 8 15 3 2 8 4 9 8 15
输出#1
11111 11011 10011 100001111 11000111000111
说明/提示
在第一个测试用例中,没有备选桥,Elsie 无法超越 Bessie 先到达岛屿 n,因此无论 Bessie 从哪个岛屿出发,她都会获胜,因为她总是先行动。
在第二个测试用例中,如果 Bessie 从岛屿 3 出发,她会输,因为:
- Bessie 的回合:从岛屿 3 通过主桥到达岛屿 4。
- Elsie 的回合:从岛屿 1 通过主桥到达岛屿 2。
- Bessie 的回合:从岛屿 4 通过主桥到达岛屿 5。
- Elsie 的回合:从岛屿 2 通过备选桥到达岛屿 6。Elsie 先到达岛屿 n。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?