309620: CF1708A. Difference Operations

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Difference Operations

题意翻译

给你 $n$ 个数 $a_1,a_2,\ldots,a_n$,每次可以的进行如下操作 : - 选择 $i(2 \leq i \leq n)$,让 $a_i \gets a_i - a_{i - 1}$ 问能否进行若干次操作后,使得 $a_i = 0 (2 \leq i \leq n )$。

题目描述

You are given an array $ a $ consisting of $ n $ positive integers. You are allowed to perform this operation any number of times (possibly, zero): - choose an index $ i $ ( $ 2 \le i \le n $ ), and change $ a_i $ to $ a_i - a_{i-1} $ . Is it possible to make $ a_i=0 $ for all $ 2\le i\le n $ ?

输入输出格式

输入格式


The input consists of multiple test cases. The first line contains a single integer $ t $ ( $ 1\le t\le 100 $ ) — the number of test cases. The description of the test cases follows. The first line contains one integer $ n $ ( $ 2 \le n \le 100 $ ) — the length of array $ a $ . The second line contains $ n $ integers $ a_1,a_2,\ldots,a_n $ ( $ 1 \le a_i \le 10^9 $ ).

输出格式


For each test case, print "YES" (without quotes), if it is possible to change $ a_i $ to $ 0 $ for all $ 2 \le i \le n $ , and "NO" (without quotes) otherwise. You can print letters in any case (upper or lower).

输入输出样例

输入样例 #1

4
2
5 10
3
1 2 3
4
1 1 1 1
9
9 9 8 2 4 4 3 5 3

输出样例 #1

YES
YES
YES
NO

说明

In the first test case, the initial array is $ [5,10] $ . You can perform $ 2 $ operations to reach the goal: 1. Choose $ i=2 $ , and the array becomes $ [5,5] $ . 2. Choose $ i=2 $ , and the array becomes $ [5,0] $ . In the second test case, the initial array is $ [1,2,3] $ . You can perform $ 4 $ operations to reach the goal: 1. Choose $ i=3 $ , and the array becomes $ [1,2,1] $ . 2. Choose $ i=2 $ , and the array becomes $ [1,1,1] $ . 3. Choose $ i=3 $ , and the array becomes $ [1,1,0] $ . 4. Choose $ i=2 $ , and the array becomes $ [1,0,0] $ . In the third test case, you can choose indices in the order $ 4 $ , $ 3 $ , $ 2 $ .

Input

题意翻译

给你 $n$ 个数 $a_1,a_2,\ldots,a_n$,每次可以的进行如下操作 : - 选择 $i(2 \leq i \leq n)$,让 $a_i \gets a_i - a_{i - 1}$ 问能否进行若干次操作后,使得 $a_i = 0 (2 \leq i \leq n )$。

Output

**题意翻译**

给定 $n$ 个数 $a_1, a_2, \ldots, a_n$,你可以进行任意次数(可能为零)的以下操作:

- 选择一个索引 $i$($2 \leq i \leq n$),然后执行 $a_i \gets a_i - a_{i-1}$。

问是否可以通过若干次操作使得对于所有 $2 \leq i \leq n$,$a_i = 0$。

**题目描述**

给定一个由 $n$ 个正整数组成的数组 $a$。

你可以执行任意次数(可能为零)以下操作:

- 选择一个索引 $i$($2 \leq i \leq n$),然后改变 $a_i$ 为 $a_i - a_{i-1}$。

是否可能使得对于所有 $2 \leq i \leq n$,$a_i=0$?

**输入输出格式**

**输入格式**

输入包含多个测试用例。第一行包含一个整数 $t$($1 \leq t \leq 100$)——测试用例的数量。接下来是测试用例的描述。

每个测试用例的第一行包含一个整数 $n$($2 \leq n \leq 100$)——数组 $a$ 的长度。

第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \leq a_i \leq 10^9$)。

**输出格式**

对于每个测试用例,如果可能使得对于所有 $2 \leq i \leq n$,$a_i$ 变为 $0$,则打印 "YES"(不带引号),否则打印 "NO"(不带引号)。

你可以以任何大小写形式打印字母。

**输入输出样例**

**输入样例 #1**

```
4
2
5 10
3
1 2 3
4
1 1 1 1
9
9 9 8 2 4 4 3 5 3
```

**输出样例 #1**

```
YES
YES
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。**题意翻译** 给定 $n$ 个数 $a_1, a_2, \ldots, a_n$,你可以进行任意次数(可能为零)的以下操作: - 选择一个索引 $i$($2 \leq i \leq n$),然后执行 $a_i \gets a_i - a_{i-1}$。 问是否可以通过若干次操作使得对于所有 $2 \leq i \leq n$,$a_i = 0$。 **题目描述** 给定一个由 $n$ 个正整数组成的数组 $a$。 你可以执行任意次数(可能为零)以下操作: - 选择一个索引 $i$($2 \leq i \leq n$),然后改变 $a_i$ 为 $a_i - a_{i-1}$。 是否可能使得对于所有 $2 \leq i \leq n$,$a_i=0$? **输入输出格式** **输入格式** 输入包含多个测试用例。第一行包含一个整数 $t$($1 \leq t \leq 100$)——测试用例的数量。接下来是测试用例的描述。 每个测试用例的第一行包含一个整数 $n$($2 \leq n \leq 100$)——数组 $a$ 的长度。 第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \leq a_i \leq 10^9$)。 **输出格式** 对于每个测试用例,如果可能使得对于所有 $2 \leq i \leq n$,$a_i$ 变为 $0$,则打印 "YES"(不带引号),否则打印 "NO"(不带引号)。 你可以以任何大小写形式打印字母。 **输入输出样例** **输入样例 #1** ``` 4 2 5 10 3 1 2 3 4 1 1 1 1 9 9 9 8 2 4 4 3 5 3 ``` **输出样例 #1** ``` YES YES 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。

加入题单

上一题 下一题 算法标签: