4132: 精灵宝可梦

时间限制:2000 ms 内存限制:128 MB
上传者:
提交:2 通过:1

题目描述

如果时光可以倒流,回到孩提时代,那时的我们没有 ipad ,刘欢还在奥运会上唱着《You and me》,宝可梦也才出到第四代 · · · · · ·众所周知,每一只宝可梦都有自身独特的属性,以及多项能力值如血量、物攻、特防等等,且能力值会随着等级的提升而有不同程度的提升。然而即使是网瘾少年也会觉得练级有一些浪费时间,此时 Gold Finger 就起到了决定性的作用,可以帮你迅速提升等级。
某天 qko 发现了一个非常高端的 Gold Finger ,它不仅能修改等级,还能让宝可梦习得任何其他宝可梦的技能 (E.g. 让裂空座学会种子闪光),且对战中可使用技能数量会超过原本上限,此时每只宝可梦有 k 个技能。
善于研究属性相克的他给许多喜欢的宝可梦配上了技能,并突发奇想决定举办一个比赛,比赛总共进行 n − 1 场,且各场比赛互相独立。前 i + 1 只宝可梦参加第 i 场比赛,比赛每次从未被淘汰的宝可梦中随机选出两只,并随机让他们使用各自的第 j(1 ≤ j ≤ k) 个技能,伤害高的宝可梦获胜,伤害低的宝可梦被淘汰,直到只剩下一只宝可梦,最后剩下的这只宝可梦成为这场比赛的冠军。
题目保证任意两只宝可梦第 j(1 ≤ j ≤ k) 个技能的伤害值不相等。qko 想知道每场比赛可能成为冠军的宝可梦的数量。

输入格式

第一行输入两个正整数 n(2 ≤ n ≤ 105) 和 k(1 ≤ k ≤ 109) ,分别表示宝可梦的数量以及每只宝可梦的技能数量。
接下来的 n 行每行 k 个整数 valii1, vali2, ...valik(1 ≤ valij ≤ 109) 表示第 i 只宝可梦的第 j 个技能的伤害值。

输出格式

输出 n − 1 行。第 i 行输出第 i 场比赛可能成为冠军的宝可梦的数量。

输入样例 复制

2 2
3 1
1 3

输出样例 复制

2

数据范围与提示