본문 바로가기
PS/BOJ

[자바] 백준 13222 - Matches (boj java)

by Nahwasa 2022. 4. 29.

문제 : boj13222

 

  결국 sqrt(w^2*h^2) 보다 입력으로 들어온 값이 작거나 같다면 YES, 아니면 NO이다.

이 때 실제로 sqrt를 하게 되면 오차가 있을 수 있으므로 N개의 입력값 중 현재 보고 있는 값을 cur이라 하면, 양변을 제곱해서 w^2*h^2 >= cur^2 을 체크해주면 된다.

 

코드 : github

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

public class Main {
    private void solution() throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        int n = Integer.parseInt(st.nextToken());
        int w = Integer.parseInt(st.nextToken());
        int h = Integer.parseInt(st.nextToken());
        int len = w*w+h*h;
        StringBuilder sb = new StringBuilder();
        while (n-->0) {
            int cur = Integer.parseInt(br.readLine());
            if (cur*cur<=len) sb.append('Y').append('E').append('S').append('\n');
            else sb.append('N').append('O').append('\n');
        }
        System.out.print(sb);
    }

    public static void main(String[] args) throws Exception {
        new Main().solution();
    }
}

댓글