반응형
접근 방법)
이 문제는 간단한 사칙연산이 살짝 들어간 입출력 문제이다.
"1 - 킹 입력받은 값", "1 - 퀸 입력받은 값", "2 - 룩 입력받은 값", "2 - 비숍 입력받은 값", "2 - 나이트 입력받은 값", "8 - 폰 입력받은 값"을 출력하면 된다.
정답 코드 1)
BufferedReader클래스 사용
import java.util.*;
import java.io.*;
class Main {
public static void main(String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int king = Integer.parseInt(st.nextToken());
int queen = Integer.parseInt(st.nextToken());
int rook = Integer.parseInt(st.nextToken());
int bishop = Integer.parseInt(st.nextToken());
int knight = Integer.parseInt(st.nextToken());
int pawn = Integer.parseInt(st.nextToken());
System.out.print((1-king)+" ");
System.out.print((1-queen)+" ");
System.out.print((2-rook)+" ");
System.out.print((2-bishop)+" ");
System.out.print((2-knight)+" ");
System.out.print((8-pawn));
}
}
정답 코드 2)
Scanner클래스 이용
import java.util.*;
class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int king = sc.nextInt();
int queen = sc.nextInt();
int rook = sc.nextInt();
int bishop = sc.nextInt();
int knight = sc.nextInt();
int pawn = sc.nextInt();
System.out.print((1-king)+" ");
System.out.print((1-queen)+" ");
System.out.print((2-rook)+" ");
System.out.print((2-bishop)+" ");
System.out.print((2-knight)+" ");
System.out.print((8-pawn));
}
}
BufferedReader를 이용한 문제(77308748)가 Scanner를 이용한 문제(77308527) 보다 빠른 것을 확인할 수 있다.
반응형
'Baekjoon 자바 코드 > 심화1' 카테고리의 다른 글
[백준] 2941번 크로아티아 알파벳 풀이 코드 (Java 자바) (0) | 2024.05.02 |
---|---|
[백준] 1157번 단어 공부 풀이 코드 (Java 자바) (0) | 2024.04.30 |
[백준] 10988번 팰린드롬인지 확인하기 풀이 코드 (Java 자바) (0) | 2024.04.24 |
[백준] 2444번 별 찍기 - 7 풀이 코드 (Java 자바) (0) | 2024.04.23 |
[백준] 25083번 새싹 풀이 코드 (Java 자바) (0) | 2024.04.22 |