可重子集
时间限制:1秒 内存限制:256M
【问题描述】
所谓可重子集,是指集合中,元素可以重复出现。比如从 2 个 1,3 个 2 选出 3 个数字产生的可重子集有:(1,1,2)、(1,2,2)、(2,2,2)。
现在给出 \(n\) 个 1 ~ 9 之间的数字,和每个数字的个数,编程输出从这些数字中选 \(m\) 个数字可重子集。
【输入格式】
第一行是 \(n\) 和 \(m\);
接下来的 \(n\) 行,每行是 \(x,k\),表示数字 \(x\) 有 \(k\) 个。
【输出格式】
按照上题的顺序要求输出所有组合。
【输入输出样例】
Input
2 3
1 2
2 3
Output
1 1 2
1 2 2
2 2 2
【数据说明】
对于 \(100\%\) 的数据,\(1<N≤10\),\(0<k<5\)。
【来源】
Mr.he