백준 2629 - 양팔저울 (파이썬)
Updated:
Answer
import sys
input = sys.stdin.readline
n = int(input())
a = list(map(int, input().split()))
m = int(input())
b = list(map(int, input().split()))
sum_a = sum(a)
dp = {a[0]}
for i in range(1, n):
tmp = dp.copy()
for j in tmp:
dp.add(j + a[i])
dp.add(abs(j - a[i]))
dp.add(a[i])
a = []
for i in b:
if i in dp:
a.append('Y')
else:
a.append('N')
print(*a)