CF1239D.Catowice City

提高+/省选-

通过率:0%

时间限制:2.00s

内存限制:512MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

In the Catowice city next weekend the cat contest will be held. However, the jury members and the contestants haven't been selected yet. There are nn residents and nn cats in the Catowice, and each resident has exactly one cat living in his house. The residents and cats are numbered with integers from 11 to nn, where the ii-th cat is living in the house of ii-th resident.

Each Catowice resident is in friendship with several cats, including the one living in his house. In order to conduct a contest, at least one jury member is needed and at least one cat contestant is needed. Of course, every jury member should know none of the contestants. For the contest to be successful, it's also needed that the number of jury members plus the number of contestants is equal to nn.

Please help Catowice residents to select the jury and the contestants for the upcoming competition, or determine that it's impossible to do.

下周末,猫城(Catowice)将举办一场猫咪大赛。然而,评委成员和参赛猫咪尚未选定。猫城共有 nn 位居民和 nn 只猫咪,且每位居民家中恰好养着一只猫咪。居民与猫咪均用 11 到 nn 的整数编号,其中第 ii 只猫咪住在第 ii 位居民家中。

每位猫城居民与若干只猫咪是朋友关系,其中包括自己家中的那只猫咪。为举办比赛,至少需要一名评委成员,且至少需要一只参赛猫咪。当然,每位评委成员都不能认识任何一只参赛猫咪。此外,为确保比赛顺利进行,评委人数与参赛猫咪数量之和必须恰好等于 nn。

请帮助猫城居民为即将到来的比赛选出评委和参赛猫咪,或判定这是不可能的。

输入格式

The first line contains an integer tt (1≤t≤100 0001 \le t \le 100\,000), the number of test cases. Then description of tt test cases follow, where each description is as follows:

The first line contains integers nn and mm (1≤n≤m≤1061 \le n \le m \le 10^6), the number of Catowice residents and the number of friendship pairs between residents and cats.

Each of the next mm lines contains integers aia_i and bib_i (1≤ai,bi≤n1 \le a_i, b_i \le n), denoting that aia_i-th resident is acquaintances with bib_i-th cat. It's guaranteed that each pair of some resident and some cat is listed at most once.

It's guaranteed, that for every ii there exists a pair between ii-th resident and ii-th cat.

Different test cases are separated with an empty line.

It's guaranteed, that the sum of nn over all test cases is at most 10610^6 and that the sum of mm over all test cases is at most 10610^6.

第一行包含一个整数 tt(1≤t≤100 0001 \le t \le 100\,000),表示测试用例的数量。随后是 tt 个测试用例的描述,每个测试用例的描述如下:

第一行包含两个整数 nn 和 mm(1≤n≤m≤1061 \le n \le m \le 10^6),分别表示 Catowice 城市居民的数量以及居民与猫之间的友谊对数量。

接下来的 mm 行中,每行包含两个整数 aia_i 和 bib_i(1≤ai,bi≤n1 \le a_i, b_i \le n),表示第 aia_i 位居民与第 bib_i 只猫相识。保证任意一对居民与猫至多出现一次。

保证对每个 ii,均存在第 ii 位居民与第 ii 只猫之间的一对关系。

不同测试用例之间以一个空行分隔。

保证所有测试用例中 nn 的总和不超过 10610^6,且所有测试用例中 mm 的总和不超过 10610^6。

输出格式

For every test case print:

  • "No", if it's impossible to select the jury and contestants.

  • Otherwise print "Yes".

    In the second line print two integers jj and pp (1≤j1 \le j, 1≤p1 \le p, j+p=nj + p = n) — the number of jury members and the number of contest participants.

    In the third line print jj distinct integers from 11 to nn, the indices of the residents forming a jury.

    In the fourth line print pp distinct integers from 11 to nn, the indices of the cats, which will participate in the contest.

    In case there are several correct answers, print any of them.

对每个测试用例,输出:

  • 若无法选出评审团成员和参赛者,则输出 "No";
  • 否则输出 "Yes"。

第二行输出两个整数 jj 和 pp(1≤j1 \le j, 1≤p1 \le p, j+p=nj + p = n)—— 分别表示评审团成员人数和参赛者人数。

第三行输出 jj 个互不相同的整数,取值范围为 11 到 nn,表示组成评审团的居民的编号。

第四行输出 pp 个互不相同的整数,取值范围为 11 到 nn,表示将参加比赛的猫的编号。

若存在多种正确答案,输出任意一种即可。

输入输出样例

  • 输入#1

    4
    3 4
    1 1
    2 2
    3 3
    1 3
    
    3 7
    1 1
    1 2
    1 3
    2 2
    3 1
    3 2
    3 3
    
    1 1
    1 1
    
    2 4
    1 1
    1 2
    2 1
    2 2

    输出#1

    Yes
    2 1
    1 3 
    2 
    Yes
    1 2
    2 
    1 3 
    No
    No

说明/提示

In the first test case, we can select the first and the third resident as a jury. Both of them are not acquaintances with a second cat, so we can select it as a contestant.

In the second test case, we can select the second resident as a jury. He is not an acquaintances with a first and a third cat, so they can be selected as contestants.

In the third test case, the only resident is acquaintances with the only cat, so they can't be in the contest together. So it's not possible to make a contest with at least one jury and at least one cat.

In the fourth test case, each resident is acquaintances with every cat, so it's again not possible to make a contest with at least one jury and at least one cat.

在第一个测试用例中,我们可以选择第一位和第三位居民作为评委。他们均不熟悉第二只猫,因此可以将第二只猫选为参赛者。

在第二个测试用例中,我们可以选择第二位居民作为评委。他不熟悉第一只和第三只猫,因此这两只猫可以被选为参赛者。

在第三个测试用例中,唯一的一位居民与唯一的那只猫相互熟悉,因此他们不能同时参加比赛。故无法组织一场至少包含一名评委和一只参赛猫的比赛。

在第四个测试用例中,每位居民都熟悉每一只猫,因此同样无法组织一场至少包含一名评委和一只参赛猫的比赛。

输入解题思路,AI测评打分。不知道怎么写?

首页