#P2664. 「NOI2013」向量内积

「NOI2013」向量内积

题目描述

两个 dd 维向量 A=[a1,a2,...,ad]A=[a_1, a_2 ,...,a_d] 与 B=[b1,b2,...,bd]B=[b_1 ,b_2 ,...,b_d] 的内积为其相对应维度的权值的乘积和,即:

$$(A,B) = \displaystyle \sum_{i=1}^d{a_ib_i} = a_1b_1 + a_2b_2 + \ldots + a_db_d $$

现有 nn 个 dd 维向量 x1,…,xnx_1, \ldots, x_n,小喵喵想知道是否存在两个向量的内积为 kk 的倍数。请帮助她解决这个问题。

输入格式

第一行包含 33 个正整数 n,d,kn,d,k,分别表示向量的个数、维数以及待检测的倍数。

接下来 nn 行每行有 dd 个非负整数,其中第 ii 行的第 jj 个整数表示向量 [xi][x_i] 的第 jj 维权值 xi,jx_{i,j}。

输出格式

包含两个整数,用空格隔开。

如果存在两个向量 xp,xqx_p,x_q 的内积为 kk 的整数倍,则输出两个向量的编号 pp 与 qq(要求 p<qp<q)。如果存在多组这样的向量组合,输出其中任意一组即可。

若不存在这样的向量组合,则输出两个 −1-1。

3 5 2
1 0 1 0 1
1 1 0 1 0
0 1 0 1 1
2 3

(x1,x2)=1(x_1, x_2) = 1

(x1,x3)=1(x_1, x_3) = 1

(x2,x3)=2(x_2, x_3) = 2

数据范围与提示

测试点编号 nn dd kk xix_i
11 22 2020 22 ≤10\le 10
22 55
33 1010 33
44 2020 22 ≤100\le 100
55 5050 33
66 5050 22 ≤1000\le 1000
77 33 ≤3000000\le 3000000
88 8080 22 ≤2000000\le 2000000
99 100100 100100 33 ≤3000000\le 3000000
1010 500500
1111 10001000 22 ≤2000000\le 2000000
1212 33 ≤3000000\le 3000000
1313 1000010000 22 <10< 10
1414 33
1515 1500015000 22
1616 1800018000
1717 2000020000
1818 5000050000 3030 33
1919 8000080000
2020 100000100000