CF1883C.Raspberries

入门

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given an array of integers a1,a2,…,ana_1, a_2, \ldots, a_n and a number kk (2≤k≤52 \leq k \leq 5). In one operation, you can do the following:

  • Choose an index 1≤i≤n1 \leq i \leq n,
  • Set ai=ai+1a_i = a_i + 1.

Find the minimum number of operations needed to make the product of all the numbers in the array a1⋅a2⋅…⋅ana_1 \cdot a_2 \cdot \ldots \cdot a_n divisible by kk.

给你一个整数数组 a1,a2,…,ana_1, a_2, \ldots, a_n 和一个整数 kk(2≤k≤52 \leq k \leq 5)。每次操作你可以执行以下步骤:

  • 选择一个下标 1≤i≤n1 \leq i \leq n,
  • 将 aia_i 的值增加 11,即令 ai=ai+1a_i = a_i + 1。

求使数组中所有数的乘积 a1⋅a2⋅…⋅ana_1 \cdot a_2 \cdot \ldots \cdot a_n 能被 kk 整除所需的最少操作次数。

输入格式

Each test consists of multiple test cases. The first line contains a single integer tt (1≤t≤1041 \leq t \leq 10^4) — the number of test cases. Then follows the description of the test cases.

The first line of each test case contains two integers nn and kk (2≤n≤1052 \leq n \leq 10^5, 2≤k≤52 \leq k \leq 5) — the size of the array aa and the number kk.

The second line of each test case contains nn integers a1,a2,…,ana_1, a_2, \ldots, a_n (1≤ai≤101 \leq a_i \leq 10).

It is guaranteed that the sum of nn over all test cases does not exceed 2⋅1052 \cdot 10^5.

每个测试包含多个测试用例。第一行包含一个整数 tt(1≤t≤1041 \leq t \leq 10^4),表示测试用例的数量。随后是各测试用例的描述。

每个测试用例的第一行包含两个整数 nn 和 kk(2≤n≤1052 \leq n \leq 10^5,2≤k≤52 \leq k \leq 5),分别表示数组 aa 的大小和数字 kk。

每个测试用例的第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤ai≤101 \leq a_i \leq 10)。

保证所有测试用例中 nn 的总和不超过 2⋅1052 \cdot 10^5。

输出格式

For each test case, output the minimum number of operations needed to make the product of all the numbers in the array divisible by kk.

对于每个测试用例,输出使数组中所有数字的乘积能被 kk 整除所需的最少操作次数。

输入输出样例

  • 输入#1

    15
    2 5
    7 3
    3 3
    7 4 1
    5 2
    9 7 7 3 9
    5 5
    5 4 1 2 3
    7 4
    9 5 1 5 9 5 1
    3 4
    6 3 6
    3 4
    6 1 5
    3 4
    1 5 9
    4 4
    1 4 1 1
    3 4
    3 5 3
    4 5
    8 9 9 3
    2 5
    1 6
    2 5
    10 10
    4 5
    1 6 1 1
    2 5
    7 7

    输出#1

    2
    2
    1
    0
    2
    0
    1
    2
    0
    1
    1
    4
    0
    4
    3

说明/提示

In the first test case, we need to choose the index i=2i = 2 twice. After that, the array will be a=[7,5]a = [7, 5]. The product of all the numbers in the array is 3535.

In the fourth test case, the product of the numbers in the array is 120120, which is already divisible by 55, so no operations are needed.

In the eighth test case, we can perform two operations by choosing i=2i = 2 and i=3i = 3 in any order. After that, the array will be a=[1,6,10]a = [1, 6, 10]. The product of the numbers in the array is 6060.

在第一个测试用例中,我们需要选择索引 i=2i = 2 两次。操作完成后,数组变为 a=[7,5]a = [7, 5]。数组中所有数的乘积为 3535。

在第四个测试用例中,数组中各数的乘积为 120120,该值已能被 55 整除,因此无需任何操作。

在第八个测试用例中,我们可以通过任意顺序选择 i=2i = 2 和 i=3i = 3 各执行一次操作,共进行两次操作。操作完成后,数组变为 a=[1,6,10]a = [1, 6, 10]。数组中所有数的乘积为 6060。

输入解题思路,AI测评打分。不知道怎么写?

首页