有n头牛正在吃草,这些牛被编号为(1 \sim n)。第i头牛牛在第i个圈里面吃草,由于每头牛牛都在自己的圈里吃草,所以这些牛牛之间互不干扰。
第i个圈是由(k_i)块草地围成的圆形草地,牛牛从第一块草地出发开始吃草,每分钟牛牛都会移动到下一块草地,然后吃光这一块草地上的草。
假设草地总共有4块,那么牛牛就会按照1、2、3、4、1、2、3、4、1、2、3、4这样的顺序绕圈吃草。
(val_{i,j})表示在第i个圈的第j块草地上吃一分钟草能够吃到的草量,假设四块草地的草量分别是5、2、6、4,那么牛牛绕着这样的圈吃草,每分钟能够吃到的草量就是5、2、6、4、5、2、6、4这样循环。
你需要输出m个数字,表示第(1 \sim m)分钟的时候哪一头牛牛在当前时刻吃草吃的最多。如果有多头牛牛的吃草数量相同,输出牛牛编号较小的那一头牛。
第一行输入一个正整数n、m,表示牛牛的数量和你需要输出的数字个数。
接下来包含n行,依次描述每头牛牛的草圈,先输入一个正整数(k_i(2 ≤ k_i ≤ 10)表示草圈的草地数量,然后输入(k_i)个数字(val_{i,j})表示每块草地上的草量。
输出一行共m个整数,由空格隔开,表示每分钟吃草最多的牛牛编号。
2 5 3 7 8 1 2 4 9
1 2 2 2 1
3 10 3 4 7 2 2 5 3 4 1 6 3 8
2 1 2 3 1 3 2 3 2 3
样例解释:
在5分钟里,第一头牛牛在五分钟里的吃草情况是[7,8,1,7,8],第二头牛牛在五分钟里的吃草情况是[4,9,4,9,4]。
所以在第2、3、4分钟时,第二头牛牛吃草多,第1、5分钟时,第一头牛牛吃草多。
- 对于测试点1-3,有(\sum k_i ≤ 300,1 ≤ n,m ≤ 100)。
- 对于测试点4-5,有“所有(k_i)均相同”的性质。
- 对于测试点6-7,有(\sum k_i ≤ 3000,1 ≤ n,m ≤ 1000)。
- 对于测试点8,有“(k_i)要么为2,要么为3”的性质。
- 对于测试点9-10,有(\sum k_i ≤ 200000,1 ≤ n,m ≤ 100000)。
- 对于所有的数据,有(2 ≤ k_i ≤ 10,1 ≤ val ≤ 10^9)。
时间限制 | 1 秒 |
内存限制 | 128 MB |