3871: 拉多少个群(挖土机 CSP-J 模拟赛 ~ 第五场)

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:3 解决:1

题目描述

有  个人,编号从 1。需要建立若干个聊天群,每个聊天群的人数上限为 。需要保证对于任意两个人 ,,满足如下要求:

  • 至少有一个群既有  又有 
  • 至少有一个群只有  没有 
  • 至少有一个群只有  没有 

假设最多只能建立  个群,请你给出一个满足要求的方案。

输入

一行,两个整数:,,

输出

第一行为建立群的数量(必须小于等于 )。

接下来输出  行,每行都对应你的方案的一个群。每行首先输出一个正整数(必须小于等于 ),表示当前聊天群人数,然后输出这么多个人的编号(必须在 1 的范围内),即当前群内成员。

如果有多种方案,任意输出一种即可。

样例输入 复制

5 5 10

样例输出 复制

8
4 1 2 3 4 
4 1 2 3 5
4 2 3 4 5
1 1
3 2 1 4
5 1 2 3 4 5
4 3 1 4 5
1 5

提示

这里给了一种分法,分成了 8 个群,保证了满足题目的三个要求。注意,这个样例提示了我们,可以有只有一个人的群。

数据规模与约定

对于 100% 的数据,2102,保证至少有一个解。

  • 子任务 1(10 分):保证 =2,=10
  • 子任务 2(20 分):保证 =,=+1
  • 子任务 3(30 分):保证 =2,=2
  • 子任务 4(40 分):保证 =×(1)1

数据范围其实放得很开,并且其实有一点点引导性,但无所谓,中秋快乐!

来源/分类