题库练习 圆桌问题
← 上一题 下一题 →

A2314 | 圆桌问题

时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

有来自 $m$ 个不同单位的代表参加一次国际会议。第 $i$ 个单位派出了 $r_i$ 个代表。

会议的餐厅共有 $n$ 张餐桌,第 $i$ 张餐桌可容纳 $c_i$ 个代表就餐。

为了使代表们充分交流,希望从同一个单位来的代表不在同一个餐桌就餐。请给出一个满足要求的代表就餐方案。

输入格式

输入的第一行是用空格隔开的两个整数,分别代表单位的个数 $m$ 和餐桌的个数 $n$。
第二行有 $m$ 个用空格隔开的整数,第 $i$ 个整数代表第 $i$ 个单位的代表人数 $r_i$。
第三行有 $n$ 个用空格隔开的整数,第 $i$ 个整数代表第 $i$ 张餐桌能容纳的人数 $c_i$。

输出格式

请输出是否存在满足要求的就餐方案,若存在,请给出任意一种可行的方案。
输出的第一行是一个非 $0$ 即 $1$ 的整数,若存在方案则输出 $1$,否则输出 $0$。
若存在方案,则对于第 $2$ 到第 $(m + 1)$ 行,在第 $(i + 1)$ 行输出 $r_i$ 个整数,代表第 $i$ 个单位的代表就餐的餐桌编号。

输入输出样例

输入 #1
4 5
4 5 3 5
3 5 2 6 4
输出 #1
1
1 2 4 5
1 2 3 4 5
2 4 5
1 2 3 4 5
C++ 编辑器
输入
输出