3373 : 보드게임
- 제한시간
- 1000 ms
- 메모리제한
- 128 MB
- 해결횟수
- 18 회
- 시도횟수
- 33 회
문제
정올이는 보드게임을 하고 있다.
이 게임은 게임판 위에서 말들을 움직이는 게임이다.
게임판은 2019개의 칸을 갖고 있다.
이 칸은 일렬로 늘어서 있으며, 가장 왼쪽 칸이 1번 칸이고 가장 오른쪽 칸이 2019번 칸이다.
1번 칸이 시작 칸이고 2019번 칸이 끝 칸이다.
말들은 시작 칸에서 시작해 오른쪽으로만 이동한다.
현재 이 게임판에 N개의 말이 있다.
이 말들은 시작 칸에 가까운 순으로 1부터 N까지 번호가 매겨져 있다.
i번 말은 X_i번 칸에 놓여 있다. 모든 말의 위치는 전부 다르다.
정올이는 앞으로 M번의 작업을 수행한다.
j번째 작업은 A_j번째 말을 오른쪽으로 한 칸 움직이는 것이다.
단, 움직이려는 오른쪽 칸에 이미 말이 있거나 A_j번째 말이 이미 2019번 칸에 있다면
A_j번째 말을 움직이지 않고 그대로 둔다.
모든 작업이 끝났을 때 각 말의 위치를 출력하여라.
입력형식
첫째 줄에 말의 수 N(1 ≤ N ≤ 100)이 주어진다.
둘째 줄에 말의 위치를 나타내는 N개의 수가 주어진다.
i번째 수는 i번째 말의 위치 X_i를 뜻한다. (1 ≤ X_1 < X_2 < ... < X_N ≤ 2019)
셋째 줄에 정올이가 앞으로 실시할 작업의 수 M(1≤M≤100)이 주어진다.
넷째 줄에 각 작업을 수행할 말의 번호를 뜻하는 M개의 수가 주어진다. j번째 수는 A_j (1 ≤ A_j ≤ N)이다.
출력형식
N줄에 거쳐서 출력한다. i번째 줄에는 i번 말의 위치를 출력한다.
입력 예3 2 3 6 2 1 3 |
출력 예2 3 7 |
입력 예2 1 2016 4 2 2 2 2 |
출력 예1 2019 |
입력 예4 1001 1002 1003 1004 7 1 2 3 4 3 2 1 |
출력 예1002 1003 1004 1005 |