#560. 仓库规划

    ID: 560 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 2 上传者: 标签>CCF CSP认证第 32 次CCF CSP软件能力认证基础算法模拟

仓库规划

问题描述

西西艾弗岛上共有 nn 个仓库,依次编号为 1n1\sim n。每个仓库都有一个 mm 维向量作为位置编码,用来表示仓库间的物流运转关系。

具体规则为:若仓库 jj 的位置编码在每一维上均严格大于仓库 ii 的对应维度,则仓库 jj 可以被视为仓库 ii 的上级仓库。

比如编码为 (1,1,1)(1,1,1) 的仓库可以成为 (0,0,0)(0,0,0) 的上级,但不能成为 (0,1,0)(0,1,0) 的上级。

如果存在多个满足条件的仓库,则取编号最小的一个作为上级;若不存在满足条件的仓库,则仓库 ii 没有上级(视为物流中心)。

现给定 nn 个仓库的 mm 维位置编码,请计算每个仓库的上级仓库编号(若无上级则输出 00)。

输入格式

n+1n+1 行:

第一行包含两个正整数 nnmm,分别表示仓库个数和位置编码的维数。 接下来 nn 行,第 ii 行(1in1\le i\le n)包含 mm 个整数,表示仓库 ii 的位置编码(按维度依次给出)。

所有编码元素均为整数,可能为负数。

数据范围

  • 0<n10000 < n \le 10000<m100 < m \le 10
  • 编码元素的绝对值不超过 10610^6
  • 50%50\% 的数据中,m=2m=2

输出格式

输出共 nn 行。第 ii 行输出一个整数,表示仓库 ii 的上级仓库编号;若没有上级,则输出 00

样例输入

4 2
0 0
-1 -1
1 2
0 -1

样例输出

3
1
0
3

说明

样例解释

  • 对仓库 11(编码 (0,0)(0,0)):仓库 33(1,2)(1,2))在每维上都大于 (0,0)(0,0),编号最小的满足者为 33,因此输出 33
  • 对仓库 22(编码 (1,1)(-1,-1)):仓库 1133 均可作为上级,取编号较小的 11
  • 对仓库 33(编码 (1,2)(1,2)):没有任何仓库在每维上均大于它,因此输出 00
  • 对仓库 44(编码 (0,1)(0,-1)):仓库 33(1,2)(1,2))满足条件,且编号最小为 33