풀이 목록으로 돌아가기

BOJ 2965 - 캥거루 세마리

2025-07-15
BOJ
브론즈 III
python
원본 문제 보기
수학

문제

BOJ 2965 - 캥거루 세마리

세 캥거루가 일직선 위에 있을 때, 양 끝 캥거루가 안쪽으로 점프하여 최대 몇 번 점프할 수 있는지 구하라. 한 번에 한 칸씩, 다른 캥거루 사이의 빈 칸으로만 이동 가능하다.

입력

세 캥거루의 위치 A, B, C가 오름차순으로 주어진다.

출력

최대 점프 횟수를 출력한다.

예제

입력출력
2 3 51

풀이

두 구간 중 더 넓은 간격이 최대 점프 횟수를 결정한다.

  1. 왼쪽 구간의 빈 칸 수: B - A - 1
  2. 오른쪽 구간의 빈 칸 수: C - B - 1
  3. 두 값 중 큰 쪽이 최대 점프 횟수이다

핵심 아이디어: 넓은 구간 쪽의 캥거루가 한 칸씩 안으로 들어오면 매 점프마다 빈 칸이 하나씩 줄어들므로, 최대 빈 칸 수가 답이다.

코드

A, B, C = map(int, input().split())
print(max(B - A - 1, C - B - 1))

복잡도

  • 시간: O(1)
  • 공간: O(1)