개발자 미니민의 개발스터디

[백준 JAVA] 1085번 풀이 - 직사각형에서 탈출

by mini_min

import java.util.Scanner;

/**
 * 직사각형에서 탈출
 * 1085번
 * 한수는 지금 (x,y)에 있다.
 * 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0),
 * 오른쪽 위 꼭짓점은 (w, h)에 있다.
 * 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오.
 *
 * 첫째 줄에 x, y, w, h가 주어진다.
 */
public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int x = sc.nextInt();
        int y = sc.nextInt();
        int w = sc.nextInt();
        int h = sc.nextInt();

        int min = 10000;

        if ( min > Math.abs(0-x) )
        {
            min = Math.abs(0-x);
        }

        if ( min > Math.abs(0-y) )
        {
            min = Math.abs(0-y);
        }

        if ( min > Math.abs(w-x) )
        {
            min = Math.abs(w-x);
        }

        if ( min > Math.abs(h-y) )
        {
            min = Math.abs(h-y);
        }

        System.out.println(min);

        sc.close();

    }
}

 

풀이

(x,y) 의 좌 / 우 / 위 / 아래 까지 도달하는 거리를 구해서 가장 짧은 거리를 출력하면 된다.

 

 

블로그의 정보

개발자 미니민의 개발로그

mini_min

활동하기