CF988C Equal Sums

题目描述

给定 $k$ 个整数序列。第 $i$ 个序列的长度为 $n_i$。 你需要选择恰好两个不同的序列 $i$ 和 $j$($i \ne j$),并且分别从这两个序列中各删除一个元素,使得删除后的第 $i$ 个序列(长度变为 $n_i - 1$)的元素和等于删除后的第 $j$ 个序列(长度变为 $n_j - 1$)的元素和。 注意,要求每个被选中的序列都恰好删除一个元素。 假设空序列(长度为 $0$)的元素和为 $0$。

输入格式

第一行包含一个整数 $k$($2 \le k \le 2 \cdot 10^5$),表示序列的个数。 接下来有 $k$ 对行,每对行描述一个序列。 每对中的第一行包含一个整数 $n_i$($1 \le n_i < 2 \cdot 10^5$),表示第 $i$ 个序列的长度。第二行包含 $n_i$ 个整数 $a_{i,1}, a_{i,2}, \dots, a_{i,n_i}$,表示第 $i$ 个序列的元素。 序列中的元素是 $-10^4$ 到 $10^4$ 之间的整数。 所有序列的总长度不超过 $2 \cdot 10^5$,即 $n_1 + n_2 + \dots + n_k \le 2 \cdot 10^5$。

输出格式

如果不存在满足条件的两个序列,输出一行 "NO"(不带引号)。否则,第一行输出 "YES"(不带引号),第二行输出两个整数 $i, x$($1 \le i \le k, 1 \le x \le n_i$),第三行输出两个整数 $j, y$($1 \le j \le k, 1 \le y \le n_j$)。表示从第 $i$ 个序列中删除第 $x$ 个元素,从第 $j$ 个序列中删除第 $y$ 个元素后,两个序列的元素和相等。 所选的两个序列必须不同,即 $i \ne j$。输出顺序可以任意。 如果有多组答案,输出任意一组均可。

说明/提示

在第一个样例中,有两个序列 $[2, 3, 1, 3, 2]$ 和 $[1, 1, 2, 2, 2, 1]$。你可以从第一个序列中删除第二个元素,得到 $[2, 1, 3, 2]$,从第二个序列中删除第六个元素,得到 $[1, 1, 2, 2, 2]$。两个新序列的元素和都是 $8$,即两者的和相等。 由 ChatGPT 4.1 翻译