luogu#P7856. 「EZEC-9」模糊众数

「EZEC-9」模糊众数

题目描述

给你一个长为 nn 的序列 aa

你可以将序列中的某个数增加 11,称为一次操作。

你需要处理 qq 次询问。

对于每次询问,求出 aa 在至少多少次操作后,可以形成一个序列 aa',使得 xxaa' 的众数。

注意:一个序列可能有多个众数。

输入格式

第一行两个整数 n,qn,q

第二行 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n

qq 行每行一个整数 xx

输出格式

对于每次询问,若无解输出 -1,否则输出最少的操作次数。

每个答案之间用换行隔开。

6 2
1 1 1 3 3 3
2
10

3
13

提示

【样例 1 解释】

  • x=2x=2 时,一种可行的方案为 a=[1,2,2,3,3,4]a'=[1,2,2,3,3,4]
  • x=10x=10 时,一种可行的方案为 a=[1,2,3,4,5,10]a'=[1,2,3,4,5,10]

【数据规模与约定】

本题采用捆绑测试。

  • Subtask 1(5 points):n=3n=3
  • Subtask 2(5 points):所有 aia_i 均相等,时间限制为 2000 ms
  • Subtask 3(5 points):n10n\le 10q103q\le 10^3
  • Subtask 4(15 points):n100n\le 100q104q\le 10^4
  • Subtask 5(15 points):n103n\le 10^3
  • Subtask 6(15 points):q103q\le 10^3
  • Subtask 7(40 points):时间限制为 2000 ms

对于 100%100\% 的数据,1n,q1051\le n,q\le 10^51ai,x1091\le a_i,x\le 10^9