-
[백준/BOJ] 9610번 : 사분면 (JAVA / 자바)백준 2022. 2. 9. 15:10
안녕하세요~ 코딩하는 코알못 코메인입니다.
https://www.acmicpc.net/problem/9610
- 문제 -
난이도 브론즈 3 문제이다.
자바에서 입력방식은 scanner와 bufferedreader가 있다.
자바를 초반에 접하면 처음에 배우는 입력은 scanner이다. scanner가 bufferedreader보다 편하지만 속도가 느리다.
bufferedreader는 무조건 문자열로 받아오기때문에 정수형이나 실수형 변수에 저장하기 위해서는 입력과 형변환을 해줘야한다.
더 자세한 내용은 아래 글 참고 하면 좋다.
풀이 방법
조건문을 잘 쓰자. x좌표 또는 y좌표가 0일때 사분면에 해당하지 않으므로 AXIS에 해당한다.
x좌표 y좌표가 양수 음수 어느것에 해당하는지에 따라서 다른 값에 값을 저장한다.
-풀이-
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); int Q1 = 0, Q2 = 0, Q3 = 0, Q4 = 0, AXIS = 0; for(int i = 0; i < n; i++) { StringTokenizer st = new StringTokenizer(br.readLine()); int x = Integer.parseInt(st.nextToken()); int y = Integer.parseInt(st.nextToken()); //사분면에 해당하지 않음 if(x == 0 || y == 0) { AXIS++; }else if(x > 0) { //1사분면 if(y > 0) { Q1++; //4사분면 }else { Q4++; } }else if(x < 0) { //2사분면 if(y > 0) { Q2++; //3사분면 }else { Q3++; } } } System.out.println("Q1: " + Q1); System.out.println("Q2: " + Q2); System.out.println("Q3: " + Q3); System.out.println("Q4: " + Q4); System.out.println("AXIS: " + AXIS); } }
-결과-
아직 코딩 공부가 부족한 필자라 설명과 풀이 방법이 많이 미흡할 수 있다. 코딩 고수분들은 보시고 문제점이 있다면 댓글로 말해주시면 감사한 마음으로 참고 수정 하겠습니다.
'백준' 카테고리의 다른 글
[백준/BOJ] 10178번 : 할로윈의 사탕 (JAVA / 자바) (0) 2022.02.09 [백준/BOJ] 10103번 : 주사위 게임 (JAVA / 자바) (0) 2022.02.09 [백준/BOJ] 9550번 : 아이들은 사탕을 좋아해 (JAVA / 자바) (0) 2022.02.09 [백준/BOJ] 9517번 : 아이 러브 크로아티아 (JAVA / 자바) (0) 2022.02.08 [백준/BOJ] 9501번 : 꿍의 우주여행 (JAVA / 자바) (0) 2022.02.08