페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#6289
서브태스크

컨베이어 벨트 1초 1024MB

문제

컨베이어 벨트는 주어진 물건들을 순서대로 옮기며 넣을 수 있는 가장 가까운 박스에 물건을 적재한다.

아래 그림은 각 무게가 [3, 3, 2, 5]인 물건들을 [5, 3, 2, 3]의 한계 적재량을 갖는 박스들에 순서대로 적재하는 모습이다.

우선 무게 3의 첫 번째 물건은 첫 번째 박스에 적재된다.

두 번째 물건은 첫 번째 박스에 적재되기엔 한계 적재량을 넘어서기에 다음 박스로 넘어가서 두 번째 박스에 담긴다.

세 번재 물건은 첫 번재 박스에 담긴다.

네 번째 물건은 그 어느 박스에도 담기지 못한다.

최종적으로 각 물건은 각각 [1, 2, 1, 0] 번째 박스에 적재된다. 이 때, 0은 어떤 박스에도 담기지 않았다는 의미다.

물건들의 무게와 각 박스들의 한계 적재량이 주어졌을 때, 각 물건이 어느 박스에 담기는지 출력하는 프로그램을 작성하시오.


입력

첫 줄에 박스의 수 N과 물건의 수 M이 주어진다. (1 \le N, M \le 150,000)

두 번째 줄에 각 박스들의 한계 적재량이 순서대로 주어진다.

세 번째 줄에 각 물건들의 무게가 순서대로 주어진다.

두 번째 줄과 세 번째 줄의 입력은 모두 1 이상 10억 이하의 정수이다.


출력

첫 줄에 각 물건이 어느 박스에 담기는지 출력한다.


부분문제

번호 점수 조건
#120점

N \le 100

#230점

박스들의 한계 적재량과 물건들의 무게가 1 이상 20 이하의 정수로만 주어진다.

#350점

추가 제한 없음


예제1

입력
44
5323
3325
출력
1210

예제2

입력
810
72385164
3643514273
출력
1413527408

태그

역링크