Python/알고리즘 - 백준

[백준] 1085 : 직사각형에서 탈출 (파이썬)

Jong_seoung 2022. 10. 21. 19:08
반응형

문제 링크 : https://www.acmicpc.net/problem/1085

 

1085번: 직사각형에서 탈출

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

www.acmicpc.net


 


문제  요약

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

입력

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

 

TRY CODE

x, y, w, h = map(int,input().split())

if abs(w-x) > abs(h-y):
    print(abs(h-y))
elif abs(w-x) > abs(h-y):
    print(abs(w-x))

문제점

  1. x와 y가 0,0과 더욱 가까운 경우를 생각하지 못했다.

해결법

  • a라는 리스트에 x y w h를 0 x 0y를 뺀 값을 절댓값으로 넣어주었다.

CODE

x, y, w, h = map(int,input().split())

a =[abs(0-x),abs(0-y),abs(w-x),abs(y-h)]

print(min(a))

 

 

풀이

1.  a 리스트 안에 0-x, 0-y, w-x, y-h의 값을 절대값으로 넣어준다.

     a 리스트 안에 최소값을 프린트해준다.

x, y, w, h = map(int,input().split())

a =[abs(0-x),abs(0-y),abs(w-x),abs(y-h)]

print(min(a))

 

 

반응형