题目描述
给定一个长度为 N 的数列 A,然后进行若干次询问,每次给定一个整数 T, 求出最大的 k, 满足 i=1∑kA[i]≤T。你的算法必须是在线的(必须即时回答每一个询问, 不能等待收到所有询问后再统一处理),假设 0≤T≤i=1∑nA[i]。
格式
输入
第一行一个整数 n(1≤n≤5×105), 表示数列A的长度。第二行有空格隔开的 n 个数 Ai(0≤Ai≤109)。第三行一个整数 q(1≤q≤5×105),表示有 q 次询问。接下来的 q 行,每行一个Tj。
输出
q行,每一行对应输入的每一个 Tj 的最大的 k。
样例
5
1 2 3 4 5
1
6
3
数据规模
20%的数据,1≤n,q≤100,
另30%的数据,1≤n,q≤1000,
100%的数据,1≤n,q≤5×105。