백준 1085번 풀이

문제

자신의 현재 위치 좌표(x,y)와 직사각형의 꼭지점 좌표(w,h)가 주어질 때 직사각형의 변으로 가는 최단거리는? (참고로 직사각형의 범위는 0,0~w,h까지이다)

풀이

대충 이런 문제다. 이 문제 자체는 w-x, h-y, x-0, y-0 중 가장 작은 값을 찾으면 된다. 그럼 뭐게요? 아 리스트져.

import sys
x,y,w,h = map(int,sys.stdin.readline().split())
a = [x,y,w,h]
print(min(a))

이렇게 내면 안된다. w와 h에 대해서는 계산이 필요하기 때문. (x, y는 0 빼는거라 굳이 손 댈 필요 없음)

import sys
x,y,w,h = map(int,sys.stdin.readline().split())
a = [x,y,w-x,h-y]
print(min(a))

참 쉽죠?