728x90
시간 제한 : 1 초
메모리 제한 : 128 MB
문제
캥거루 세 마리가 사막에서 놀고 있다. 사막에는 수직선이 하나 있고, 캥거루는 서로 다른 한 좌표 위에 있다.
한 번 움직일 때, 바깥쪽의 두 캥거루 중 한 마리가 다른 두 캥거루 사이의 정수 좌표로 점프한다. 한 좌표 위에 있는 캥거루가 두 마리 이상일 수는 없다.
캥거루는 최대 몇 번 움직일 수 있을까?
입력
첫째 줄에 세 캥거루의 초기 위치 A, B, C가 주어진다. (0 < A < B < C < 100)
출력
캥거루가 최대 몇 번 움직일 수 있는지 출력한다.
소스코드
#include <iostream> using namespace std; int main(void) { int a, b, c, sub1, sub2; cin >> a >> b >> c; sub1 = b - a, sub2 = c - b; cout << (sub1 < sub2 ? sub2 : sub1) - 1; }
Tip
수학적으로 잠깐 고민해보면 된다. 가운데 캥거루와 양 옆 캥거루 간의 거리 중 거리가 먼 케이스만 고려하면 된다. 한 번 점프할 때 가용 공간이 사라지기 때문에 1만 빼주면 된다.
728x90
'Computer Science > Algorithm Problem' 카테고리의 다른 글
백준 알고리즘] 11866 -조세퍼스 문제0 (0) | 2017.10.15 |
---|---|
백준 알고리즘] 11726 - 2xn 타일링 (0) | 2017.10.10 |
백준 알고리즘] 9461번 - 파도반 수열(ACM-ICPC 2013 Daejeon) (0) | 2017.10.08 |
백준 알고리즘] 1149번 - RGB거리 (0) | 2017.10.02 |
백준 알고리즘] 1094번 - 막대기 (0) | 2017.09.30 |