[백준(Baekjoon)][자바(java)] 3034 : 앵그리 창영 / 기하 1

728x90

 

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

 

3034번: 앵그리 창영

첫째 줄에 던진 성냥의 개수 N과 박스의 가로 크기 W와 세로 크기 H가 주어진다. (1 ≤ N ≤ 50, 1 ≤ W, H ≤ 100) 다음 N개 줄에는 성냥의 길이가 주어진다. 길이는 1보다 크거나 같고 1000보다 작거나

www.acmicpc.net

 

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

	public static void main(String[] args) throws Exception {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		int n = Integer.parseInt(st.nextToken()),
			w = Integer.parseInt(st.nextToken()),	// 박스 가로 길이
			h = Integer.parseInt(st.nextToken());	// 박스 세로 길이
		double diag = Math.sqrt(w * w + h * h);		// 박스 대각선 길이
		StringBuilder sb = new StringBuilder();
		for (int i = 0; i < n; ++i)			// 성냥 길이
			sb.append(Integer.parseInt(br.readLine()) <= diag ? "DA\n" : "NE\n");
		br.close();

		System.out.println(sb.toString());
	}
}

 

직사각형의 가로, 세로, 대각선 길이 중
대각선 길이가 가장 길 것이므로 (피타고라스의 정리)
대각선 길이보다 작거나 같으면 됨

 

 

반응형