만드는 중입니다

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

아파트

면접 대비

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

요약
원형으로 쌓인 2N개의 손을 매 게임마다 b_j번 옮겼을 때 맨 아래에 있는 참가자 번호를 출력합니다. 손의 배치는 게임 사이에 그대로 유지됩니다.
난이도

쉬움10점 중 2점

유형
시뮬레이션, 배열
정답자
아직 제출이 없습니다

문제

아~파트 아파트! 아~파트 아파트! 몇 층에 살까?

연말을 맞아 아주대학교 소프트웨어학과 알고리즘 동아리 ANSI는 아파트 게임을 TT회 진행하려고 한다. ANSI는 진행자 교선이와 NN명의 참가자로 구성된다. 참가자에게는 11번부터 NN번까지 번호가 붙어 있다. 각 참가자는 두 손을 층층이 쌓아 손 아파트를 만든다. 밑에서부터 ii번째 위치에는 번호가 aia_i인 참가자의 손이 놓인다. jj번째 아파트 게임은 다음과 같이 진행한다.

  1. 교선이가 양의 정수 bjb_j를 부른다.
  2. 참가자들이 1부터 bjb_j까지 수를 센다. 수를 셀 때마다 손 아파트의 맨 아래 손을 빼서 맨 위에 올린다.
  3. 교선이가 부른 수 bjb_j를 셀 때 맨 아래에 손을 둔 참가자가 패배한다. 패배한 참가자는 손을 빼지 않고 그대로 둔다.

예를 들어, 손이 66개 있을 때 44를 부르면 아래에서 44번째에 손을 둔 참가자가 패배한다. 교선이는 손 아파트를 이루는 손의 총 개수보다 큰 수도 부를 수 있다.

게임이 이어지도록, 다음 아파트 게임은 이전 게임이 끝난 상태에서 손 아파트의 위치를 바꾸지 않고 새로 시작한다. TT번의 게임에서 가장 많이 패배한 참가자는 벌칙을 받으므로, 각 게임에서 패배하는 참가자를 알아내자.

입력

첫 번째 줄에 참가자의 수 NN이 주어진다. (1≤N≤40)(1 \leq N \leq 40)

두 번째 줄에 아파트 게임의 횟수 TT가 주어진다. (1≤T≤5 000)(1 \leq T \leq 5\,000)

세 번째 줄에 손 아파트에서 손의 위치를 나타내는 2N2N개의 수가 공백으로 구분되어 주어진다. aia_i는 밑에서 ii번째에 손을 둔 참가자의 번호이다. 모든 참가자의 번호는 각각 두 번씩 등장한다. (1≤ai≤N)(1 \leq a_i \leq N)

네 번째 줄에 교선이가 부르는 TT개의 양의 정수 bjb_j가 공백으로 구분되어 주어진다. bjb_j는 jj번째 게임에서 교선이가 부른 수이다. (1≤bj≤1 000)(1 \leq b_j \leq 1\,000)

출력

첫 번째 게임부터 패배하는 참가자의 번호를 순서대로 공백으로 구분하여 출력한다.

예제1

  1. 예제 1

    입력
    4
    2
    2 4 4 3 3 1 2 1
    3 12
    
    예상 출력
    4 1