만드는 중입니다

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

빠른 건너뛰기

면접 대비

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

요약
원형 재생목록에서 시작 곡마다 곡이 끝난 뒤에만 광고가 나오고 이전 광고 후 c초가 지나야 하는 조건에서 광고 횟수를 구합니다.
난이도

보통10점 중 6점

유형
누적 합, 그리디, 이분 탐색, 배열
정답자
아직 제출이 없습니다

문제

Gry는 새로 나온 Expify 음악 스트리밍 플랫폼을 쓰기 시작했다. Gry는 돈을 내고 싶지 않아서, Expify는 그에게 광고를 듣도록 강제한다. 광고는 노래가 끝난 뒤에만 재생할 수 있고(노래 중간에는 재생할 수 없다), 직전 광고가 끝난 뒤 최소 cc초가 지나야 재생할 수 있다.

Gry에게는 nn곡으로 이루어진 원형 재생목록이 있다. ii번째 노래의 길이는 did_i초이다. Gry는 광고 수를 최소로 줄이고 싶어 하므로, ii번째 노래부터 재생목록 전체를 들을 때 광고가 몇 번 재생되는지 알고 싶어 한다. 재생목록은 nn곡을 재생한 뒤 멈추며, 필요하면 원형으로 이어서 재생한다.

Gry가 듣기 시작하기 직전에도 광고가 한 번 재생된다. 이 광고와 재생목록이 멈춘 뒤 재생되는 광고는 세지 않는다.

입력

첫 줄에 nn과 cc가 주어진다 (1≤n≤1061 \leq n \leq 10^6, 1≤c≤1091 \leq c \leq 10^9). 둘째 줄에 nn곡의 길이 d1,d2,…,dnd_1, d_2, \ldots, d_n이 주어진다 (1≤di≤1031 \leq d_i \leq 10^3).

출력

1번 노래부터 nn번 노래까지 각 ii번째 노래에서 시작할 때의 광고 수를 출력한다. nn개의 답을 공백으로 구분해 한 줄에 출력한다.

예제2

  1. 예제 1

    입력
    7 7
    1 1 1 1 1 1 1
    
    예상 출력
    0 0 0 0 0 0 0
    
  2. 예제 2

    입력
    3 3
    1 1 3
    
    예상 출력
    0 1 1