Problem Solving/BOJ

[백준 / BOJ] C++ 1085 직사각형에서 탈출

nageune 2023. 2. 8. 23:11
728x90
반응형

1085번: 직사각형에서 탈출

 

문제

https://www.acmicpc.net/problem/1085

 

1085번: 직사각형에서 탈출

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

www.acmicpc.net

 

 

풀이

왼쪽 아래 꼭짓점이 (0, 0)이면서 오른쪽 위 꼭짓점이 (w, h)인 직사각형에서 현수의 위치 (x, y)로부터 직사각형의 경계선까지의 최솟값을 구하는 문제다. 

위 그림처럼 x, y, w-x, h-y 중 최솟값을 찾아 출력하면 된다.

 

 

코드

#include <bits/stdc++.h>
using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(NULL);
  int x, y, w, h;
  cin >> x >> y >> w >> h;
  int ans = x;
  if (ans > y)
    ans = y;
  if (ans > w - x)
    ans = w - x;
  if (ans > h - y)
    ans = h - y;
  cout << ans;
  return 0;
}

 

728x90
반응형