Module: 답변으로 이진 검색


Problem

3 /6


삼림 벌채

Problem

농부 Nikolai는 옥수수 밭이 있어야 할 숲을 벌목하기 위해 Dmitry와 Fedor라는 두 명의 벌목꾼을 고용했습니다. X 나무가 숲에서 자랍니다.

Dmitry는 하루에 A그루를 자르지만 K일마다 쉬면서 나무 한 그루도 자르지 않습니다. 따라서 Dmitry는 K일, 2K일, 3K일 등에 쉬고 있습니다.

Fedor는 하루에 B 그루의 나무를 베지만 M일마다 그는 쉬고 한 그루의 나무도 베지 않습니다. 따라서 Fedor는 M일, 2M일, 3M일 등에 쉬고 있습니다.

벌목꾼들은 병렬로 일하기 때문에 아무도 쉬지 않는 날에는 A + B 나무를 베고, Fedor — A 나무, Dmitry — B 트리. 두 벌목꾼이 모두 쉬는 날에는 나무 한 그루도 잘리지 않습니다.

농부 Nikolai는 벌목꾼들이 모든 나무를 베고 옥수수밭에 씨를 뿌릴 수 있는 데 며칠이 걸리는지 알고 싶어 합니다. 정수 A, K, B, MX를 제공하는 프로그램을 작성해야 합니다. < /code>는 숲의 모든 나무가 베어지는 데 걸리는 일 수를 결정합니다.

입력: 5개의 공백으로 구분된 정수 입력: A, K, B, MX (\(1 <= A,\ B <= 10^9 \)< /span> , \(2 <= K,\ M <= 10^{18}\), \ (1 <= X <= 10^{18}\)).

입력: 단일 정수 출력 — 원하는 일수.
 

예시
<헤드> <일># <몸>
예를 들어 설명
위의 예에서 벌목꾼은 다음과 같이 7일 동안 25그루의 나무를 베었습니다.
- 1일차: 드미트리가 나무 2그루, 표도르가 나무 3그루를 베어 총 5그루;
- 2일차: 드미트리가 나무 2그루, 표도르가 나무 3그루를 베어 총 10 그루;
- 3일차: 드미트리는 나무 2그루를 베고 표도르는 쉬며 총 12 그루의 나무를 베었습니다.
- 4일차: 드미트리는 쉬고 표도르는 나무 3그루를 베어 총 15 그루;
- 5일차: 드미트리가 나무 2그루, 표도르가 나무 3그루를 베어 총 20 그루;
- 6일차: 드미트리는 2그루의 나무를 베고 페도르는 쉬며 총 22 그루의 나무;
- 7일차: 드미트리는 2그루, 표도르는 나머지 1그루를 베어 총 25그루를 모두 베었습니다.
 
입력 출력
1 2 4 3 3 25 7