만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

사건 계산

시간 제한2초메모리 제한1024 MB

요약
n개의 수와 q개의 질의가 주어질 때, 각 질의 값이 주어진 수들에 비트 OR과 AND를 반복 적용해 만들어지는지 판별합니다.
난이도

보통10점 중 6점

유형
비트 연산, 수학
정답자
아직 제출이 없습니다

문제

타이탄에서 타노스가 도착하기를 기다리던 닥터 스트레인지는 시간을 허비하지 않았다. 그는 시간의 돌이 든 다섯 번째 인피니티 스톤, 아가모토의 눈을 사용해 어벤져스가 전쟁에서 이길 확률을 계산하려 했다. 그는 어벤져스가 할 수 있는 행동 nn개와, 가능 여부를 알아야 할 행동 qq개를 정했다. 각 행동은 그것을 고유하게 나타내는 수로 표시한다. 어벤져스의 행동은 a1,a2,…,ana_1, a_2, \ldots, a_n이고, 확인할 행동은 b1,b2,…,bqb_1, b_2, \ldots, b_q이다.

마법사는 시간의 연속체가 다음과 같이 이루어져 있다고 알고 있다. 행동 xx와 행동 yy를 할 수 있으면, 행동 x∨yx \lor y와 x∧yx \land y도 할 수 있다. 여기서 ∨\lor와 ∧\land는 각각 비트 단위 OR와 AND 연산이다. 각 b1,b2,…,bqb_1, b_2, \ldots, b_q가 이 방식으로 얻어지는지 판단하라. 타노스가 곧 타이탄에 도착하므로 스트레인지를 도와 달라. 같은 행동은 몇 번이든 반복해서 수행할 수 있다.

입력

첫 줄에 어벤져스가 수행할 수 있는 행동의 개수 nn이 주어진다 (1≤n≤1000001 \le n \le 100000).

다음 줄에는 행동을 나타내는 정수 aia_i nn개가 주어진다 (0≤ai≤1090 \le a_i \le 10^9). 모든 수는 서로 다르다.

세 번째 줄에는 확인할 행동의 개수 qq가 주어진다 (1≤q≤1000001 \le q \le 100000).

마지막 줄에는 확인할 행동을 나타내는 정수 bjb_j qq개가 주어진다 (0≤bj≤1090 \le b_j \le 10^9).

출력

ii번째 줄에 bib_i로 표시된 행동을 할 수 있으면 YES, 그렇지 않으면 NO를 출력한다.

힌트

11, 33, 44는 ∨\lor와 ∧\land를 쓰지 않고 얻을 수 있고, 5=4∨15 = 4 \lor 1이다.

예제1

  1. 예제 1

    입력
    3
    1 3 4
    6
    1 2 3 4 5 6
    
    예상 출력
    YES
    NO
    YES
    YES
    YES
    NO