문제:
한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오.
첫째 줄에 x, y, w, h가 주어진다.
# 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다.
# 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오.
# 첫째 줄에 x, y, w, h가 주어진다.
# 이 문제는 현재 좌표에서 직사각형까지 최소 길이를 구하는 문제이다.
# 최소 길이는 상하좌우 모두 될 수 있으며 현재는 알 수 없다.
x, y, w, h = map(int, input().split())
# def min_value(a, b):
# if a >= b:
# print(b)
# else:
# print(a)
# if x > abs(x - w) and y > abs(y - h):
# print(min(abs(x - w), abs(y - h)))
# elif x > abs(x - w) and y < abs(y - h):
# print(min((abs(x - w), y)))
# elif x < abs(x - w) and y > abs(y - h):
# print(min((x, abs(y - h))))
# elif x <= abs(x - w) and y <= abs(y - h):
# print(min((x, y)))
print(min(x, y, abs(x - w), abs(y - h)))
결과:
수많은 고민의 흔적이 보이는 주석들..
무슨 함수를 만들어도 보고, 각종 조건문을 다 사용해보았는데도 계속 실패해서
그냥 막 써보자 하고 맨 마지막 한 줄을 작성해보았는데, 성공했다..
쓸데없는 머리를 써면 안되는 걸 깨달음
반응형
'백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 2775번 부녀회장이 될테야 (파이썬) (0) | 2022.08.17 |
---|---|
백준 알고리즘 2480번 주사위 세개 (파이썬) (0) | 2022.08.15 |
백준 알고리즘 1193번 분수찾기 (파이썬) (0) | 2022.08.14 |
백준 알고리즘 1929번 소수 구하기 (파이썬) (0) | 2022.08.09 |
백준 알고리즘 10250번 ACM 호텔 (파이썬) (0) | 2022.08.08 |