问题 6273 --4.拉多少个群

6273: 4.拉多少个群

题目描述

有 $n$ 个人,编号从 $1\sim n$。需要建立若干个聊天群,每个聊天群的人数上限为 $m$。需要保证对于任意两个人 $x,y$,满足如下要求: - 至少有一个群既有 $x$ 又有 $y$。 - 至少有一个群只有 $x$ 没有 $y$。 - 至少有一个群只有 $y$ 没有 $x$。 假设最多只能建立 $k$ 个群,请你给出一个满足要求的方案。

输入

一行,两个整数:$n,m,k$。

输出

第一行为建立群的数量(必须小于等于 $k$)。 接下来输出 $n$ 行,每行都对应你的方案的一个群。每行首先输出一个正整数(必须小于等于 $m$),表示当前聊天群人数,然后输出这么多个人的编号(必须在 $1\sim n$ 的范围内),即当前群内成员。 如果有多种方案,任意输出一种即可。

样例输入输出

输入#1 复制
5 5 10
输出#1 复制
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\%$ 的数据,$2 \le n \le 10$,$2\le m\le n$,保证至少有一个解。 - 子任务 1(10 分):保证 $n=2,k=10$。 - 子任务 2(20 分):保证 $m=n,k=n+1$。 - 子任务 3(30 分):保证 $m=2,k=n^2$。 - 子任务 4(40 分):保证 $k=\lceil\frac{n\times (n-1)}{m-1}\rceil$ 数据范围其实放得很开,并且其实有一点点引导性,但无所谓,中秋快乐!
序号 标题 作者 发表时间 费用 订购数 操作