sm 기술 블로그
97. 1085(직사각형에서 탈출) 본문
import java.util.*;
import java.io.*;
class Main{
public static void main(String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
ArrayList<Integer> repo = new ArrayList<>();
String[] sBits = br.readLine().split(" ");
int x = Integer.parseInt(sBits[0]);
int y = Integer.parseInt(sBits[1]);
int w = Integer.parseInt(sBits[2]);
int h = Integer.parseInt(sBits[3]);
repo.add(w-x);
repo.add(h-y);
repo.add(x);
repo.add(y);
System.out.println(Collections.min(repo));
}
}
문제요약
.(0,0) 부터 (w,h)의 직사각형이 있다. x,y가 주어지는데 경계값을 가는 최소거리를 구하라.
해설
문제를 이해하면 크게 어렵지 않다.
다음과 같이 (0,0)에서 (762,375) 크기의 직사각형이 있을 때, 점 (161,181)이 경계값에 닿을 수 있는 최소거리를 구하면된다.
따라서 (x축)161이 0 이나 762에 혹은 (y축)181이 0이나 375에 닿는 네가지 경우 중 최소값을 구하면 된다.
'문제 > 백준_자바' 카테고리의 다른 글
99. 4153(직각삼각형) (0) | 2022.06.21 |
---|---|
98. 3009(네 번째 점) (0) | 2022.06.21 |
96. 11478(서로 다른 문자열의 개수) (0) | 2022.06.21 |
95. 1269(대칭 차집합) (0) | 2022.06.21 |
94. 1764(듣보잡) (0) | 2022.06.20 |
Comments