시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 512 MB 0 0 0 0.000%

문제

Марсоход, осуществляющий международную миссию на Марсе, неисправен.

Для восстановления его работоспособности необходимо повысить мощность его батареи. Мощность батареи марсохода задаётся целым положительным числом. Текущая мощность батареи равна a, для восстановления работоспособности марсохода необходимо повысить её мощность до значения b. Для изменения мощности батареи на марсоход с Земли можно передавать специальные сигналы двух типов: X и Y. Сигнал типа X увеличивает текущую мощность батареи на 1, а сигнал типа Y увеличивает текущую мощность батареи на 2.

Организаторы миссии хотели бы изменить мощность батареи до необходимой, передав минимальное количество сигналов. К сожалению, из-за особенности устройства марсохода, если мощность батареи оказывается кратна целому числу c, он окончательно выходит из строя и перестаёт реагировать на сигналы.

Требуется написать программу, которая по заданным начальной мощности батареи a, необходимой мощности батареи b и целому числу c определяет минимальное количество сигналов, которое необходимо передать на марсоход, чтобы восстановить его работоспособность.

입력

Входные данные содержит три целых числа: a, b и c, по одному на строке (1 ⩽ a < b ⩽ 109, 2 ⩽ c ⩽ 109, a не кратно c, b не кратно c).

출력

Требуется вывести одно целое число: минимальное количество сигналов, которые необходимо передать на марсоход.

서브태스크

번호 배점 조건
1 25

1 ⩽ a < b ⩽ 15

2 ⩽ c ⩽ 15

2 25

1 ⩽ a < b ⩽ 105

2 ⩽ c ⩽ 105

3 25

1 ⩽ a < b ⩽ 109

c = 2

4 25

1 ⩽ a < b ⩽ 109

2 ⩽ c ⩽ 109

예제 입력 1

2
7
3

예제 출력 1

3

예제 입력 2

4
10
3

예제 출력 2

4

힌트

В первом примере можно действовать следующим образом: отправить на марсоход сигналы Y, X, Y. Мощность батареи меняется следующим образом: 2 → 4 → 5 → 7. Во втором примере можно действовать следующим образом: отправить на марсоход сигналы X, Y, X, Y. Мощность батареи меняется следующим образом: 4 → 5 → 7 → 8 → 10.

채점 및 기타 정보

  • 예제는 채점하지 않는다.