「网络流 24 题5」圆桌聚餐

Special Judge 提交数: 21, 通过率: 52.38%, 平均分: 78.95

题目描述:

假设有来自 m个不同单位的代表参加一次国际会议。每个单位的代表数分别为 ri 。会议餐厅共有 n  张餐桌,每张餐桌可容纳 ci  个代表就餐。
为了使代表们充分交流,希望从同一个单位来的代表不在同一个餐桌就餐。

试设计一个算法,给出满足要求的代表就餐方案。

输入格式:

第 1 行有 2 个正整数 m  和 n,m  表示单位数,n  表示餐桌数。
第 2 行有 m  个正整数,分别表示每个单位的代表数。
第 3 行有 n  个正整数,分别表示每个餐桌的容量。

输出格式:

如果问题有解,在文件第 1 行输出 1,否则输出 0。
接下来的 m 行给出每个单位代表的就餐桌号。如果有多个满足要求的方案,只要输出一个方案。

样例输入:

4 5
4 5 3 5
3 5 2 6 4

样例输出:

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

提示:

1≤m≤150,1≤n≤270

时间限制: 1000ms
空间限制: 256MB