頁面無法載入?點擊這裡可能會修復。
Placeholder

#6336
子任務

확산 실험 1s 1024MB

問題

길이 N의 직선으로 얇은 물이 가득 찬 실린더가 있다.

실린더는 일정한 간격으로 1부터 N까지 구간이 나눠져 번호가 붙어 있다. 아래는 N=12의 실린더의 예시다.

우리는 이 실린더를 통해 액체 내부의 확산 실험을 하려고 한다.

실험 내용은 아래와 같다.

  1. 0초에 M개의 서로 다른 구간 A_1, A_2, ...,\ A_M에 물감을 투입한다.

  2. 1초가 지날 때마다 물감이 들어있는 각 구간은 인접한 좌우 구간으로 물감이 확산된다.

  3. 2번이 반복되다가 모든 구간에 물감이 확산되면 실험은 종료된다.

각 구간에 물감이 확산된 초를 모두 기록하여 출력하는 프로그램을 작성하시오.


輸入

첫 줄에 정수 NM이 주어진다. (1 \le N, M \le 1,000,000)

두 번째 줄에 M개의 정수 A_1, A_2, ...,\ A_M가 주어진다. (1 \le A_i \le N, 1 \le i \le M)


輸出

첫 줄에 1번 구간부터 N번 구간까지 각 구간에 물감이 확산된 초를 공백으로 구분하여 출력한다.


子任務

編號 分數 條件
#18分

N=2

#220分

N \le 200

#314分

M=1

#420分

M=2

#538分

추가 제한 없음


範例 #1

12 3
4 8 12
3 2 1 0 1 2 1 0 1 2 1 0

範例 #2

2 1
1
0 1


來源

klee

需要登入才能撰寫程式碼。