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

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

종이 눈송이

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

요약
종이 띠를 느슨한 끝에서부터 줄어드는 거리마다 번갈아 접은 뒤 M개 지점에서 자르고, 각 더미에 담긴 종이 길이의 합을 왼쪽부터 구한다.
난이도

어려움10점 중 8점

유형
시뮬레이션, 정렬, 이분 탐색, 수학
정답자
아직 제출이 없습니다

문제

종이 눈송이를 만들려면 종이를 여러 곳에서 접은 다음 접힌 종이의 일부를 잘라낸다. 종이를 펼치면 아주 멋진 무늬가 나타날 수도 있다. 물론 접는 위치와 자르는 위치를 잘 골랐을 때의 이야기다.

Samantha는 최근에 이 취미를 시작했는데 "현대 미술" 풍으로 접근한다. 우선 길이가 LL 피코미터인 종이 띠를 접는 방법을 탐구한다(Samantha는 접는 위치와 자르는 위치를 아주 정밀하게 측정하는 것을 좋아한다). 종이 띠를 실수선 위에 놓는데, 한쪽 끝은 00에, 다른 쪽 끝은 LL에 둔다. 점 00에 있는 왼쪽 끝은 이 점에 고정되어 있고, LL 위치에 있는 다른 끝은 느슨한 끝이다.

그다음 Samantha는 일련의 접기를 한다. 첫 번째 접기에서는 느슨한 끝에서 f1f_1 피코미터 떨어진 곳에서 종이에 접는 선을 만들고 느슨한 끝을 이 접는 선 위로 접는다. 이제 느슨한 끝은 왼쪽을 향한다. 두 번째 접기에서는 종이의 위쪽 부분을 느슨한 끝에서 f2f_2 피코미터 떨어진 곳에서 접고(f2<f1f_2 < f_1), 종이의 위쪽 부분을 이 접는 점 위로 다시 오른쪽으로 접는다. 이제 느슨한 끝은 오른쪽을 향한다.

Samantha는 이런 식으로 왼쪽과 오른쪽을 번갈아 가며 접는다. 각 단계에서 종이의 위쪽 부분을 느슨한 끝에서 fif_i 피코미터 떨어진 곳에서 접고(fi<fi−1f_i < f_{i-1}), 느슨한 끝을 접는 선 위로 접는다.

이제 종이를 MM개의 서로 다른 위치에서 자르면 종이가 M+1M+1개의 더미로 나뉜다. 각 더미에는 0개 이상의 종이 층이 들어 있다. 아래 그림은 첫 번째 예제 입력의 접힌 종이, 자르는 위치(실선), 그리고 종이가 접힌 xx 위치(점선)를 나타낸다.

각 M+1M+1개의 더미에 들어 있는 종이의 총 길이는 얼마인가?

입력

입력의 첫째 줄에는 세 정수 NN (1≤N≤1051 \leq N \leq 10^5), MM (1≤M≤1051 \leq M \leq 10^5), LL (2≤L≤10182 \leq L \leq 10^{18})이 주어진다. NN은 접는 횟수, MM은 자르는 횟수, LL은 종이의 길이를 피코미터 단위로 나타낸 값이다.

둘째 줄에는 접는 위치가 주어진다. 이 줄에는 NN개의 정수 f1,f2,…,fNf_1, f_2, \ldots, f_N이 주어지며, ii번째 접기가 느슨한 끝에서 fif_i 피코미터 떨어진 곳에서 이루어졌음을 나타낸다. 이 값들은 1≤fN<fN−1<⋯<f1<L1 \leq f_N < f_{N-1} < \cdots < f_1 < L을 만족한다.

셋째 줄에는 자르는 위치가 주어진다. 이 줄에는 MM개의 정수 c1,c2,…,cMc_1, c_2, \ldots, c_M이 주어지며, ii번째 자르기가 고정된 점에서 cic_i 피코미터 떨어진 곳에서 이루어졌음을 나타낸다. 이 값들은 −1018≤c1<c2<⋯<cM≤1018-10^{18} \leq c_1 < c_2 < \cdots < c_M \leq 10^{18}을 만족한다.

출력

각 M+1M+1개의 더미에 들어 있는 종이의 총 길이를 왼쪽에서 오른쪽 순서로 출력한다.

예제3

  1. 예제 1

    입력
    4 2 20
    19 17 11 7
    1 6
    
    예상 출력
    5 13 2
    
  2. 예제 2

    입력
    1 1 10
    9
    0
    
    예상 출력
    8 2
    
  3. 예제 3

    입력
    1 2 1000000000000000000
    500000000000000000
    0 500000000000000000
    
    예상 출력
    0 1000000000000000000 0