#6586. 「ICPC World Finals 2019」迷你高尔夫

内存限制:1024 MiB 时间限制:6000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: StudyingFather

题目描述

一群人刚刚打了一轮迷你高尔夫。迷你高尔夫球场由许多洞组成,每个玩家通过轮流击球,直到球落入洞中的方式玩遍所有洞,玩家在该洞的得分是他们击球的次数。为了防止一些菜鸡玩家拖慢游戏速度,设置了一个上限 l l 是一个正整数),如果一个玩家击球 l 次仍然没能将球击入洞中,他在这个洞的游戏就会结束,且他在这个洞的得分将被设置为 l 。每个玩家的总分是他在各洞的得分之和,显然,得分越低越好。

但有个问题:没有一个人记住了 l 的值,他们决定先不再设置每个洞的击球上限,允许每个玩家不停玩下去直到球落入洞中。游戏结束后,他们打算看一下 l 的值并根据此调整分数,将每轮中大于 l 的分值替换为 l

游戏已经结束,但他们还没有查看 l 的值,此时他们想知道每个人能达到的最理想排名是多少。在这个问题中,一位玩家的排名等于在调整分数后,得到低于或等于该玩家的分数的玩家数量。例如,如果调整后各玩家的分数分别为 3,5,5,4,3 ,则他们的排名分别为 2,5,5,3,2

现在给出每位玩家在每个洞上的得分,求出每位玩家的最小可能排名。

输入格式

输入的第一行包含两个整数 p,h ,分别代表玩家数量和洞的数量。

接下来 p 行,每行 h 个整数,第 i 行的第 j 个整数代表第 i 个玩家在第 j 个洞上的得分,且保证不超过 10^9

输出格式

输出 n 行,按照输入顺序给出每位玩家的最小可能排名。

样例

样例输入 1

3 3
2 2 2
4 2 1
4 4 1

样例输出 1

1
2
2

样例输入 2

6 4
3 1 2 2
4 3 2 2
6 6 3 2
7 3 4 3
3 4 2 4
2 3 3 5

样例输出 2

1
2
5
5
4
3

数据范围与提示

p \leq 500 , h \leq 50