CF1708A Difference Operations

题目描述

给定一个包含 $n$ 个正整数的数组 $a$。 你可以进行任意次数(也可以不进行)的如下操作: - 选择一个下标 $i$($2 \le i \le n$),将 $a_i$ 变为 $a_i - a_{i-1}$。 请判断是否有可能通过若干次操作,使得对于所有 $2 \le i \le n$,都有 $a_i=0$。

输入格式

输入包含多组测试数据。第一行包含一个整数 $t$($1 \le t \le 100$),表示测试用例的数量。接下来是每组测试用例的描述。 每组测试用例的第一行包含一个整数 $n$($2 \le n \le 100$),表示数组 $a$ 的长度。 第二行包含 $n$ 个整数 $a_1,a_2,\ldots,a_n$($1 \le a_i \le 10^9$)。

输出格式

对于每组测试用例,如果可以通过若干次操作使得对于所有 $2 \le i \le n$,都有 $a_i=0$,输出 "YES"(不含引号);否则输出 "NO"(不含引号)。 输出的字母大小写不限。

说明/提示

在第一个测试用例中,初始数组为 $[5,10]$。你可以进行 $2$ 次操作达到目标: 1. 选择 $i=2$,数组变为 $[5,5]$。 2. 选择 $i=2$,数组变为 $[5,0]$。 在第二个测试用例中,初始数组为 $[1,2,3]$。你可以进行 $4$ 次操作达到目标: 1. 选择 $i=3$,数组变为 $[1,2,1]$。 2. 选择 $i=2$,数组变为 $[1,1,1]$。 3. 选择 $i=3$,数组变为 $[1,1,0]$。 4. 选择 $i=2$,数组变为 $[1,0,0]$。 在第三个测试用例中,你可以依次选择下标 $4$、$3$、$2$。 由 ChatGPT 4.1 翻译