-
[백준 - 1004번] 어린 왕자 - JavaAlgorithm/BOJ(Baekjoon Online Judge) 2020. 9. 5. 11:20
이번에는 BOJ의 1004번 문제 "어린 왕자" 를 풀어보도록 하자
성공한 코드는 다음과 같다.
import java.io.*; public class Main{ public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); String line = br.readLine(); int t = Integer.parseInt(line); int x1, y1, x2, y2; double dA, dB; int count = 0; for(int i = 0; i < t; i++){ count = 0; line = br.readLine(); x1 = Integer.parseInt(line.split(" ")[0]); y1 = Integer.parseInt(line.split(" ")[1]); x2 = Integer.parseInt(line.split(" ")[2]); y2 = Integer.parseInt(line.split(" ")[3]); line = br.readLine(); int n = Integer.parseInt(line); for(int j = 0; j < n; j++){ line = br.readLine(); int cx = Integer.parseInt(line.split(" ")[0]); int cy = Integer.parseInt(line.split(" ")[1]); int r = Integer.parseInt(line.split(" ")[2]); dA = Math.sqrt(Math.pow((double)x1 - (double)cx, 2) + Math.pow((double)y1 - (double)cy, 2)); dB = Math.sqrt(Math.pow((double)x2 - (double)cx, 2) + Math.pow((double)y2 - (double)cy, 2)); if(dA < (double)r && dB < (double)r){ }else if(dA < r){ count++; }else if(dB < r){ count++; } } bw.write(count + "\n"); } bw.flush(); br.close(); bw.close(); } }
문제 : https://www.acmicpc.net/problem/1004
혹시 코드에 이상한 부분이나 틀린 부분이 있던지, 이해가 안가는 부분이 있다면 댓글로 알려주세요.
'Algorithm > BOJ(Baekjoon Online Judge)' 카테고리의 다른 글
[백준 - 1003번] 피보나치 함수 - Java (0) 2020.09.05 [백준 - 1002번] 터렛 - Java (0) 2020.09.05 [백준 - 1001번] A-B - Java (0) 2020.09.05 [백준 - 1000번] A+B - Java (0) 2020.09.05 [백준 - 14681번] 사분면 고르기 - Java //Wello Horld // (0) 2020.04.17