노드 가중치가 있는 높이 17 이하의 완전 이진 트리에서, 각 질의 (시작 노드 A, 목표 합 D)마다 A에서 출발하는 경로의 합이 D가 되는 노드 B의 개수를 센다.
토르는 인피니티 스톤이 있는 행성에 대한 정보를 얻었다. 모든 행성은 포화 완전이진트리 형태로 연결되어 있으며 각 행성은 에너지값 EEE를 가진다.
포화 완전이진트리는 루트 정점의 번호를 111로 하고 111번 정점을 제외한 모든 정점 vvv가 (v/2)(v/2)(v/2)번 정점을 부모로 가지며 높이가 NNN일 때 (2N)−1(2^N)-1(2N)−1개의 정점을 가지는 트리이다. 위 그림은 높이가 333인 포화 완전이진트리이다. 행성 AAA와 BBB가 연결되었다는 것은 AAA에서 BBB로, BBB에서 AAA로 이동할 수 있다는 뜻이다. 행성 AAA에서 BBB까지의 경로의 합은 AAA에서 BBB까지의 경로 위에 있는 모든 행성의 에너지 합이다. AAA에서 AAA까지의 경로의 합은 AAA 행성의 에너지와 같다.
토르가 있는 행성에서 인피니티 스톤이 있는 행성까지의 경로의 합은 DDD이다. 현재 위치에서 경로의 합이 DDD인 행성은 여러 개일 수 있다. 인피니티 스톤이 있을 수 있는 행성의 개수를 구하라.
첫째 줄에 NNN(1≤N≤171 \le N \le 171≤N≤17)이 주어진다. 둘째 줄에 각 행성의 에너지 EiE_iEi(−1,000,000,000≤Ei≤1,000,000,000-1{,}000{,}000{,}000 \le E_i \le 1{,}000{,}000{,}000−1,000,000,000≤Ei≤1,000,000,000)가 (2N)−1(2^N)-1(2N)−1개 주어진다. 셋째 줄에 QQQ(1≤Q≤100,0001 \le Q \le 100{,}0001≤Q≤100,000)가 주어진다. 다음 QQQ개의 줄에는 토르가 있는 행성의 번호 AAA(1≤A≤2N−11 \le A \le 2^N-11≤A≤2N−1)와 경로의 합 DDD(−1,000,000,000≤D≤1,000,000,000-1{,}000{,}000{,}000 \le D \le 1{,}000{,}000{,}000−1,000,000,000≤D≤1,000,000,000)가 주어진다.
QQQ개의 줄에 걸쳐 토르가 있는 행성에서 경로의 합이 DDD인 행성의 개수를 출력한다.
두 번째 질의에서 444번 위치에서 경로의 합이 555가 되는 행성은 555번 행성(E[4]+E[2]+E[5]=5E[4] + E[2] + E[5] = 5E[4]+E[2]+E[5]=5)과 333번 행성(E[4]+E[2]+E[1]+E[3]=5E[4] + E[2] + E[1] + E[3] = 5E[4]+E[2]+E[1]+E[3]=5)뿐이므로 답은 222이다.