728x90

문제) 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오.

입력) 첫째 줄에 x, y, w, h가 주어진다.

출력) 첫째 줄에 문제의 정답을 출력한다.

x, y, w, h = map(int, input().split())
x_right = w - x; y_up = h - y
print(min(x, y, x_right, y_up))

풀이 : 한수의 위치 기준 왼쪽, 아래쪽 경계선까지의 거리는 각각 x, y이다. 그리고 오른쪽,  위쪽 경계선과의 거리는 w-x, h-y이다. 모든 경계선까지의 거리 중 가장 짧은 것을 출력해주면 된다.

'코딩 공부 > 파이썬' 카테고리의 다른 글

백준) 9020 - 골드바흐의 추측  (0) 2022.03.02
백준) 3009 - 네 번째 점  (0) 2022.03.02
백준) 4948 - 베르트랑 공준 [파이썬 3]  (0) 2022.02.22
백준) 1929 - 소수 구하기  (0) 2022.02.22
백준) 2581 - 소수  (0) 2022.02.21

+ Recent posts