AT_abc449_e.[ABC449E] A += v
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定整数 N,M 和一个长度为 N 的整数序列 A=(A1,A2,…,AN),序列中每个元素都在 1 到 M 之间(包含 1 和 M)。
对这个整数序列 A 重复执行如下操作 10100 次:
- 记 v 为 1 到 M 中,在 A 中出现次数最少的整数。如果存在多个这样的 v,取最小的那个。然后将 v 加到 A 的末尾。
有 Q 个询问。第 i 个询问给定整数 Xi,请你在执行操作 10100 次之后,输出 AXi 的值。
输入格式
输入从标准输入给出,格式如下:
N M
A1 A2 … AN
Q
X1
X2
⋮
XQ
输出格式
输出 Q 行。
第 i 行输出第 i 个询问的答案。
输入输出样例
输入#1
3 3 1 1 2 8 1 2 3 4 5 6 7 8
输出#1
1 1 2 3 2 3 1 2
输入#2
7 30 20 26 3 14 4 4 9 10 31 9 21 23 97 99 30 79 57 3
输出#2
30 2 18 21 7 9 29 19 27 3
说明/提示
样例解释 1
初始时,A=(1,1,2)。每次操作后,A 的变化如下:
- 第一次操作:A 中 1,2,3 的出现次数分别为 2,1,0,所以 v=3,将 v 加入 A 末尾,A=(1,1,2,3)。
- 第二次操作:A 中 1,2,3 的出现次数分别为 2,1,1,所以 v=2,将 v 加入 A 末尾,A=(1,1,2,3,2)。
- 第三次操作:A 中 1,2,3 的出现次数分别为 2,2,1,所以 v=3,将 v 加入 A 末尾,A=(1,1,2,3,2,3)。
- ⋮
重复很多次后,A 变为 A=(1,1,2,3,2,3,1,2,…)。
约束条件
- 1≤N,M≤5×105
- 1≤Ai≤M
- 1≤Q≤2×105
- 1≤Xi≤1018
- 所有输入值均为整数。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?