CSPSMK03A. 数字(num)

提交3 通过2
通过率66.7%
文件IO启用
输入文件num.in
输出文件num.out
时间限制1000ms
内存限制512MiB
    ID: 14531 传统题 文件IO 输入文件:num.in 输出文件:num.out 1000ms 512MiB 尝试: 3 已通过: 2 难度: 提高+/省选- 上传者: 标签>C++CSP-S考前模拟

题目描述

题目描述

BB 进制数,每个数字 i∈[0,B)i \in [0,B) 有 aia_i 个。你要用这些数字组成一个最大的 BB 进制数 XX(不能有前导零,不需要用完所有数字),使得 XX 是 B−1B-1 的倍数。 qq 次询问,每次询问 XX 在 BB 进制下的第 kk 位数字是什么(最低位是第 00 位)。

输入格式

第一行包含两个正整数 B,qB,q。

第二行包含 BB 个正整数 a0,a1,a2,...,aB−1a_0,a_1,a_2,...,a_{B-1}。

接下来 qq 行,每行一个整数 kk,表示一个询问。

输出格式

输出 qq 行,每行一个整数,依次回答每个询问,如果那一位不存在,请输出 −1-1。

输入样例

3 3
1 1 1
0
1
2

输出样例

0
2 
-1

说明提示

输入样例 #2

2 1
2 8
30

输出样例 #2

-1

输入样例 #3

3 1
14 12 11
43

输出样例 #3

-1

数据范围

子任务 附加限制 分值
11 B,ai,q≤100B, a_{i}, q \leq 100 3030
22 B,ai≤100,q≤100000B, a_{i} \leq 100, q \leq 100000 2525
33 B≤1000,ai≤1000000,q≤1000B \leq 1000, a_{i} \leq 1000000, q \leq 1000
44 B,ai≤1000000,q≤100000B, a_{i} \leq 1000000, q \leq 100000 2020