문제
한수는 지금 (x, y)에 있다. 직사각형의 왼쪽 아래 꼭짓점은 (0, 0)에 있고, 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 x, y, w, h가 주어진다.
출력
첫째 줄에 문제의 정답을 출력한다.
정답비율
58.188%
x, y, w, h = map(int,input().split())
North = h - y
South = y - 0
West = x - 0
East = w - x
lst = [North, South, West, East]
# print(lst)
# [1, 2, 6, 4]
print(min(lst))
제한으로 주어진 직사각형의 너비와 높이값이 매우 작아서 단순하게 코딩하면 되는 문제였다. 사실 너비와 높이값이 더 크더라도 시간제한에 걸릴 일은 없을 것 같다.
주어진 점에서 사방으로 모서리와의 차이 값을 구한다. 그리고 그 중 가장 짧은 값이 답이되는 문제였다. 이를 코드로 작성하기위해 각 사방의 변수에 값을 할당시켰고, 이들을 리스트에 넣었다. 그리고 min함수를 통해 가장 작은 값을 출력시켜주었다.
참고
'Problem Solving > Baekjoon Online Judge' 카테고리의 다른 글
<수학2> 4153번 직각삼각형 with 파이썬 (0) | 2021.01.08 |
---|---|
<수학2> 3009번 네 번째 점 with 파이썬 (0) | 2021.01.06 |
<수학2> 9020번 골드바흐의 추측 with 파이썬 (0) | 2021.01.01 |
<수학2> 4948번 베르트랑 공준 with 파이썬 (0) | 2020.12.30 |
<수학2> 1929번 소수 구하기 with 파이썬 (0) | 2020.12.28 |