아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

복잡한 구간

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

요약
0부터 2M까지 각 k에 대해 a_i + a_j <= k <= b_i + b_j를 만족하는 순서쌍 (i, j)의 개수를 센다.
난이도

보통10점 중 7점

유형
누적 합, 조합론, 배열, 수학
정답자
아직 제출이 없습니다

문제

소들이 재미있는 새 놀이를 고안하느라 바쁘다. 그중 하나는 NN개의 구간을 사용하는 놀이로, ii번째 구간은 수직선 위의 aia_i에서 시작해 bi≥aib_i \geq a_i에서 끝난다. aia_i와 bib_i는 모두 0…M0 \ldots M 범위의 정수이며, 1≤M≤50001 \leq M \leq 5000이다.

놀이를 하려면 Bessie가 어떤 구간을 고르고(예를 들어 ii번째 구간), 사촌 Elsie가 어떤 구간을 고른다(예를 들어 jj번째 구간, Bessie와 같은 구간이어도 된다). 어떤 값 kk가 주어졌을 때 ai+aj≤k≤bi+bja_i + a_j \leq k \leq b_i + b_j이면 두 소가 이긴다.

0…2M0 \ldots 2M 범위의 각 kk에 대해, Bessie와 Elsie가 이길 수 있는 순서쌍 (i,j)(i,j)의 개수를 구하라.

입력

첫 줄에 NN과 MM이 주어진다. 다음 NN개의 줄에 각 구간이 정수 aia_i와 bib_i로 주어진다.

출력

0…2M0 \ldots 2M 범위의 각 kk에 대해 한 줄씩, 총 2M+12M+1개의 줄을 출력하라.

예제1

  1. 예제 1

    입력
    2 5
    1 3
    2 5
    
    예상 출력
    0
    0
    1
    3
    4
    4
    4
    3
    3
    1
    1