D. 数字变换

    传统题 1000ms 256MiB

数字变换

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

样例下载

题目描述

已知 mm 个素数 p1,p2,,pmp_1, p_2, ……, p_m 组成一个素数集。

TT 个问题:

每个问题给出一个整数 nn,让你通过若干次操作将其变成 0 。每次操作,你可以从素数集中任意选择一个素数 pip_i,然后对 nn 进行如下变换: nn = nn%pin - n \% p_i。其中 % 表示取模。

你希望操作次数尽可能少。

请你输出最少操作次数。如果不可能变成 00,则输出 -1

输入格式

第一行:包含两个整数 m,Tm, T

第二行:包含 mm 个素数 pip_i

接下来 TT 行,每行包含一个整数 nn

输出格式

TT 行,对于每个问题给出的 nn,输出使得 nn 变为 00 的最小操作次数;如果不可能变为 00,则输出 -1

样例输入

2 2
2 3
5
6

样例输出

3
-1

样例解释

对于 n=5:

(1) n=5, p=3:n=5-5%3=3

(2) n=3, p=2:n=3-3%2=2

(3) n=2, p=3:n=2-2%3=0

对于 n=6:

不可能变成 0.

数据范围

  • 对于 2020 分的数据,保证 m,n,T104m,n,T\le 10^4
  • 对于另外 2020 分的数据,保证 T=1T=1
  • 对于 100%100\% 的数据,保证 1m,T1051\le m,T\le 10^52pi1072\le p_i\le 10^7pip_i 为素数,1n1071\le n\le 10^7

2026-05-30

未参加
状态
已结束
规则
OI
题目
4
开始于
2026-5-30 7:30
结束于
2026-5-30 11:30
持续时间
4 小时
主持人
参赛人数
20