만드는 중입니다

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

게시판 공고

면접 대비

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

요약
각 광고판은 S_i일에 나타나 T의 다음 배수일에 사라질 때, 모든 광고판을 한 번 이상 보기 위해 방문해야 하는 최소 일수를 구한다.
난이도

보통10점 중 6점

유형
구간, 그리디, 정렬, 이분 탐색
정답자
아직 제출이 없습니다

문제

교토 대학 근처에는 공고가 붙은 게시판이 NN개 있다.

ii번째 게시판은 SiS_i일째에 나타난다. 그런데 TT일마다 그날 이전에 설치된 모든 게시판이 철거된다. 철거되는 날에는 새로운 게시판이 나타나지 않는다고 가정한다.

모든 게시판을 적어도 한 번씩 보기 위해 대학에 방문해야 하는 최소 횟수를 구하여라.

입력

첫째 줄에 정수 NN이 주어진다 (1≤N≤2⋅1051 \le N \le 2 \cdot 10^5). 둘째 줄에 NN개의 정수 S1,S2,…,SNS_1, S_2, \ldots, S_N이 주어진다. 여기서 SiS_i는 ii번째 게시판이 나타나는 날이다 (1≤Si≤1091 \le S_i \le 10^9). 마지막 줄에 정수 TT가 주어진다 (2≤T≤1092 \le T \le 10^9, 모든 ii에 대해 SiS_i는 TT로 나누어떨어지지 않는다). TT는 연속된 철거 사이의 간격이다. 즉 게시판은 TT일, 2T2T일, 3T3T일 등에 철거된다.

출력

모든 게시판을 적어도 한 번씩 보기 위해 해야 하는 방문의 최소 횟수를 정수 하나로 출력한다.

힌트

예제 1에서 처음 두 게시판은 1일과 2일에 나타난다. 그다음 이 2개의 게시판은 3일에 철거된다. 이후 5일에 마지막 게시판이 나타나고, 이 게시판은 6일에 철거된다. 따라서 2일에 방문하여 게시판 1과 2를 보고, 5일에 방문하여 게시판 3을 보면 총 두 번이다.

예제3

  1. 예제 1

    입력
    3
    1 2 5
    3
    
    예상 출력
    2
    
  2. 예제 2

    입력
    5
    1 1 1 1 1
    2021
    
    예상 출력
    1
    
  3. 예제 3

    입력
    9
    623690081 433933447 476190629 262703497 211047202 971407775 628894325 731963982 822804784
    128512451
    
    예상 출력
    7