#P6575. [BalticOI 2017] Friends

    ID: 7338 远端评测题 1000ms 128MiB 尝试: 0 已通过: 0 显示难度NOI/NOI+/CTS 上传者: 标签>2017Special JudgeBalticOI(波罗的海)

[BalticOI 2017] Friends

背景

高中就是要交最棒的朋友!
乌姆里奇校长要调查霍格沃茨学校的交友情况了!

题目描述

学校里有 nn 个同学,他们的交友情况满足以下的条件:

  • 如果 aa 与 bb 是朋友那么 bb 与 aa 也是朋友;
  • 同学们可以分成组,每个同学都恰好只在一个组里面,且:
    • 每个组的人数至少 11 个最多 pp 个;
    • 每组都有这样最多 qq 对朋友满足一个人在这个组,另一个人在别的组。

在同一个组里的两个同学不一定必须是朋友。
现在她来问您,想让您说出这些学生撒没撒谎。
如果没有撒谎的话,她想让您给出一个合理的分组模式。

输入格式

第一行三个整数 n,p,qn,p,q 代表学生数,组别内学生的限制,和组别内不同组别朋友的限制。
学生的编号为从 00 到 n−1n - 1。
接下来 nn 行,从第 00 个学生开始,首先一个整数 mim_i 代表这个学生与多少个学生为朋友,接下来 mim_i 个整数代表有哪些朋友。

输出格式

如果这些学生撒谎了,输出 detention 并结束程序。
如果这些学生没撒谎,首先输出 home。
然后一个整数 GG 代表这些学生可以分成 GG 组。
接下来 GG 行每行首先一个整数 G′G' 代表这一组有几个学生,然后 G′G' 个整数 gig_i 代表这一组学生的编号。
任意输出一种方式即可。

4 2 1
1 1
2 0 2
2 1 3
1 2

home
2
2 0 1
2 2 3
5 2 1
1 1
2 0 2
2 1 3
2 2 4
1 3

detention
3 3 3
2 1 2
2 0 2
1 0

detention

提示

数据规模与约定

本题采用捆绑测试。

  • Subtask 1(20 pts):n≤16n \le 16。
  • Subtask 2(37 pts):n≤250n \le 250,q≤2q \le 2。
  • Subtask 3(12 pts):q≤2q \le 2。
  • Subtask 4(31 pts):无特殊限制。

对于 100%100\% 的数据,1≤n≤25001 \le n \le 2500,p+q≤15p+q \le 15,∑mi≤30000\sum m_i \le 30000,同学们不以自己为朋友。

本题使用 Special Judge。

说明

翻译自 BOI 2017 D2 T2 Friends。
翻译者:@一只书虫仔。

spj 提示信息说明:

  • Accepted:答案正确。
  • Wrong Answer[0]:判断错误。
  • Wrong Answer[1]:某些组的大小不符合要求。
  • Wrong Answer[2]:组里含有编号不在 00 到 n−1n-1 内的人。
  • Wrong Answer[3]:某些人属于多个组。
  • Wrong Answer[4]:某些人不属于任何组。
  • Wrong Answer[5]:分组不满足要求。

spj 作者:

https://www.luogu.com.cn/user/174045