백준 문제풀이
1085 번 : 직사각형에서 탈출
하다블
2023. 4. 27. 18:04
반응형
문제는 다음과 같습니다.
https://www.acmicpc.net/problem/1085
1085번: 직사각형에서 탈출
한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램
www.acmicpc.net
풀이 코드는 다음과 같습니다.
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int x,y,w,h;
cin>>x>>y>>w>>h;
cout<<min(x,(min(y,min(w-x,h-y))));
}
직사각형을 탈출할 수 있는 최소한의 거리는 각 축으로 가느냐(x축 또는 y축) 아니면 축이 아닌 다른 변으로 가느냐를 정해야 합니다.
따라서 한수의 위치에서
x축이 가까운지(x)
y축이 가까운지(y)
다른 두 변이 더 가까운지(w-x 또는 h-y)
확인하여 그중 가장 짧은 거리를 선택하여 출력하면 됩니다.
반응형