상품권

아직 제출이 없습니다시간 제한3초메모리 제한128 MB

문제

어느 사탕 가게가 캐러멜 사탕을 판다. 모든 양의 정수 cc에 대해 사탕이 정확히 cc개 들어 있는 꾸러미가 딱 하나씩 있다. 즉 꾸러미의 크기는 1,2,3,1, 2, 3, \dots이고 각 크기마다 하나씩만 있으며, 새로 들어오는 물량은 없다.

가게 주인은 손님에게 보답하려고 mm개의 상품권을 꾸러미 속에 숨겨 두었다. 상품권은 서로 다른 꾸러미에 하나씩 들어가며(한 꾸러미에 상품권은 최대 하나), kk번째 상품권은 크기가 bkb_k인 꾸러미에 들어 있다.

마을 축제는 nn일 동안 열린다. kk일째에는 손님이 aka_k명 오는 파티가 열린다. kk일째 아침에 그 aka_k명의 손님은 각자, 아직 팔리지 않은 꾸러미 중에서 사탕 개수가 aka_k로 나누어떨어지는(즉 aka_k명이 똑같이 나눌 수 있는) 가장 작은 꾸러미를 산다. 손님이 aka_k명이므로, kk일째에는 크기가 aka_k의 배수이면서 아직 남아 있는 꾸러미 가운데 작은 것부터 aka_k개가 팔린다.

손님에게는 축제 전체에 걸쳐 산 순서대로 1,2,3,1, 2, 3, \dots번이 매겨진다. 앞선 날에 산 손님이 뒷날에 산 손님보다 먼저이고, 같은 날 안에서는 더 작은 꾸러미를 산 손님이 더 작은 번호를 받는다.

예를 들어 n=2n = 2, a1=4a_1 = 4, a2=2a_2 = 2이면 첫째 날에는 사탕이 4,8,12,164, 8, 12, 16개 든 꾸러미가 팔리고, 둘째 날에는 2,62, 6개 든 꾸러미가 팔린다.

어떤 손님들이 상품권이 든 꾸러미를 사게 되는지 구하여라.

입력

첫째 줄에 상품권의 개수 mm (1m1,000,0001 \le m \le 1{,}000{,}000)이 주어진다.

이어지는 mm개의 줄에는 각각 정수 bkb_k (1bk1,000,0001 \le b_k \le 1{,}000{,}000)가 주어지며, 이는 kk번째 상품권이 든 꾸러미의 크기(사탕 개수)이다. bkb_k는 서로 다르며 강한 증가(오름차순)로 주어진다.

그다음 줄에 축제가 열리는 날 수 nn (1n1,000,0001 \le n \le 1{,}000{,}000)이 주어진다.

이어지는 nn개의 줄에는 각각 정수 aka_k (1ak1,000,0001 \le a_k \le 1{,}000{,}000)가 주어지며, 이는 kk일째 파티에 오는 손님 수이다.

출력

첫째 줄에 팔린 상품권의 개수 zz를 출력한다.

이어지는 zz개의 줄에는 상품권이 든 꾸러미를 산 손님들의 번호를 오름차순으로 출력한다. z=0z = 0이면 첫째 줄만 출력한다.