T582976 L2-4 证明修改器
题目描述
在数学中,为了证明一个命题成立,我们通常要用一系列语句进行推理。这些用于推理证明出命题成立的语句,构成了这个命题的一个证明。这天,Zaoly 跟往常一样正在仔细阅读一篇论文,论文中有一段话是在证明一个命题。Zaoly 想要验证这个证明是否有效。
证明由 $M$ 条语句组成,其中第 $i$ 个语句由互不相等的三个参数 $B_{i, 1}$、$B_{i, 2}$、$B_{i, 3}$ 组成,每个参数都是整数,表示由两个前提 $B_{i, 1}$ 和 $B_{i, 2}$ 推理出一个结论 $B_{i, 3}$。
验证证明是否有效的过程如下:
* 一开始,我们把 $N$ 个命题 $A_1, A_2, \ldots, A_N$ 作为公理,即默认成立的命题,作为后续一切推理的前提。
* 接下来,我们从上到下检查每一条语句。对于第 $i$ 条语句,只有当 $B_{i, 1}$ 和 $B_{i, 2}$ 都是已证明命题,且 $B_{i, 3}$ 是未证明命题时,这条语句才有效。此后 $B_{i, 3}$ 将会变成已证明命题。请注意,公理视为已证明命题。
只要有一条语句无效,整个证明就无效。
Zaoly 发现,这个证明无效,但只要改动一条语句的一个参数 $B_{I, J}$ 就可以把证明变得有效(修改后仍需保证每条语句 $B_{i, 1}$、$B_{i, 2}$、$B_{i, 3}$ 互不相等)。请给出一种修改方法,指出 $I$ 和 $J$ 的值,并指出修改后的新值 $V$。
保证答案一定存在。如果答案不唯一,你可以任选一个。
输入格式
输入第一行给出一个整数 $N$($2 \le N \le 10^4$)表示公理的个数。接下来一行给出 $N$ 个正整数 $A_1, A_2, \ldots, A_N$($A_i \le 10^5$)表示公理。保证 $A_1, A_2, \ldots, A_N$ 互不相等。
接下来一行给出一个正整数 $M$($\le 10^4$)表示证明语句的条数。随后 $M$ 行中,第 $i$ 行给出三个正整数 $B_{i, 1}$、$B_{i, 2}$、$B_{i, 3}$($B_{i, j} \le 10^5$)表示证明中第 $i$ 条语句的参数。保证 $B_{i, 1}$、$B_{i, 2}$、$B_{i, 3}$ 互不相等。
输入保证给出的证明无效,但只要改动一条语句的一个参数 $B_{I, J}$ 就可以把证明变得有效(修改后仍需保证每条语句 $B_{i, 1}$、$B_{i, 2}$、$B_{i, 3}$ 互不相等)。
输出格式
输出三个正整数 $I$($\le M$)、$J$($\le 3$)、$V$($\le 10^5$),表示把 $B_{I, J}$ 的值改成 $V$。修改后仍需保证每条语句 $B_{i, 1}$、$B_{i, 2}$、$B_{i, 3}$ 互不相等。
如果答案不唯一,你可以任选一个。
说明/提示
在第一个样例中,输出“`2 3 6`”等答案也视为正确。
在第二个样例中,输出“`2 3 114`”或者“`1 3 12356`”等答案也视为正确。