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

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

물 주기

면접 대비

시간 제한1초메모리 제한512 MB

요약
매일 연속한 A개의 화분에 물을 주어 B만큼 늘리고 모든 화분의 수분이 1씩 줄어들 때, 모든 식물을 최대한 오래 살린 뒤 처음 죽는 날을 구한다.
난이도

보통10점 중 6점

유형
그리디, 슬라이딩 윈도우, 누적 합, 구현
정답자
아직 제출이 없습니다

문제

랑이 집사는 고양이들이 좋아한다는 캣닢을 직접 재배하려고 한다.

일직선으로 놓여진 NN개의 화분에 캣닢이 하나씩 심어져 있다.

각 화분은 초기에 KK만큼의 수분을 머금고 있고, 매일 아래와 같은 일이 순서대로 일어난다.

  1. 랑이 집사가 연속된 AA개의 화분에 물을 준다. 이 때 물을 준 화분의 수분은 BB만큼씩 증가한다.
  2. 모든 화분의 수분이 1씩 감소한다.
  3. 수분이 0이 된 화분에 있는 캣닢은 죽는다.

모든 캣닢이 살아 있는 기간이 최대한 길어지도록 물을 줄 때, 첫 캣닢이 죽는 날짜를 출력하는 프로그램을 작성하시오. 첫 날은 1일이다.

입력

첫째 줄에 자연수 NN, KK, AA, BB가 공백을 사이에 두고 주어진다. (2≤N≤1002 \le N \le 100, 1≤K≤1001 \le K \le 100, 1≤A×B<N1 \le A \times B < N, AA는 NN의 약수)

출력

모든 캣닢이 살아 있는 기간이 최대한 길어지도록 물을 줄 때, 첫 캣닢이 죽는 날짜를 출력한다.

예제2

  1. 예제 1

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

    입력
    2 2 1 1
    
    예상 출력
    3