预处理经典例题
在程序设计实战中,有很多情况,我们可以把重复的操作,优化掉,比如重复地检查一些内容存不存在,或者满不满足。实际上我们可以预先把这个问题的所有情况用数组存起来,然后查询的时候就直接能够知道,从而大幅降低算法执行时间
题目描述
给定三个数列:
- A=(A1,…,AN)
- B=(B1,…,BM)
- C=(C1,…,CL)
另给定一个数列 X=(X1,…,XQ)。对于每个 i=1,…,Q,请解决以下问题:
问题:能否从 A,B,C 中各选一个元素,使得它们的和恰好等于 Xi?
注意:本题内存量较大,可以开300000005大小的数组
输入格式
输入通过标准输入给出,格式如下:
N
A1 … AN
M
B1 … BM
L
C1 … CL
Q
X1 … XQ
数据保证满足以下范围
- 1 ≤ N,M,L ≤ 100
- 0 ≤ Ai, Bi ,Ci ≤ 108
- 1 ≤ Q ≤ 2× 105
- 0 ≤ Xi ≤ 3× 108
- 输入全是整数
输出格式
输出 Q 行。 如果可以从A,B,C数组中各取一个整数,加起来与Xi 相等,则第i行应输出Yes ;否则输出No
样例
3
1 2 3
2
2 4
6
1 2 4 8 16 32
4
1 5 10 50
No
Yes
Yes
No
解释
