728x90
https://www.acmicpc.net/problem/3003
문제
동혁이는 오래된 창고를 뒤지다가 낡은 체스판과 피스를 발견했다.
체스판의 먼지를 털어내고 걸레로 닦으니 그럭저럭 쓸만한 체스판이 되었다. 하지만, 검정색 피스는 모두 있었으나, 흰색 피스는 개수가 올바르지 않았다.
체스는 총 16개의 피스를 사용하며, 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개로 구성되어 있다.
동혁이가 발견한 흰색 피스의 개수가 주어졌을 때, 몇 개를 더하거나 빼야 올바른 세트가 되는지 구하는 프로그램을 작성하시오.
풀이
킹, 퀸, 룩, 비숍, 나이트, 폰의 총 개수에서 주어진 피스의 개수를 빼면 된다.
Scanner 클래스를 이용한 방법, BufferedReader 클래스와 StringBuilder 클래스를 이용한 방법으로 풀어 보았다.
코드
Scanner 클래스를 이용한 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int king = 1 - scanner.nextInt();
int queen = 1 - scanner.nextInt();
int rook = 2 - scanner.nextInt();
int bishop = 2 - scanner.nextInt();
int knight = 2 - scanner.nextInt();
int pawn = 8 - scanner.nextInt();
System.out.print(king + " ");
System.out.print(queen + " ");
System.out.print(rook + " ");
System.out.print(bishop + " ");
System.out.print(knight + " ");
System.out.print(pawn);
}
}
BufferedReader 클래스와 StringBuilder 클래스를 이용한 코드
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
StringTokenizer st;
st = new StringTokenizer(br.readLine());
int king = 1 - Integer.parseInt(st.nextToken());
int queen = 1 - Integer.parseInt(st.nextToken());
int rook = 2 - Integer.parseInt(st.nextToken());
int bishop = 2 - Integer.parseInt(st.nextToken());
int knight = 2 - Integer.parseInt(st.nextToken());
int pawn = 8 - Integer.parseInt(st.nextToken());
sb.append(king).append(" ");
sb.append(queen).append(" ");
sb.append(rook).append(" ");
sb.append(bishop).append(" ");
sb.append(knight).append(" ");
sb.append(pawn);
System.out.println(sb);
}
}
틀린 부분이 있다면 정정해주시면 감사하겠습니다.
궁금한 부분이 있거나, 다른 아이디어가 있으시면 자유롭게 댓글 남겨주세요!
728x90
'[JAVA]백준 알고리즘 > 기타' 카테고리의 다른 글
[JAVA]백준 알고리즘 15596번 : 정수 N개의 합 (2) | 2023.01.08 |
---|---|
[JAVA]백준 알고리즘 4344번 : 평균은 넘겠지 (2) | 2023.01.07 |
[JAVA]백준 알고리즘 8958번 : OX퀴즈 (0) | 2023.01.07 |
[JAVA]백준 알고리즘 1110번 : 더하기 사이클 (0) | 2023.01.05 |
[JAVA]백준 알고리즘 25083번 : 새싹 (0) | 2022.12.30 |