공부하기/백준

[Java] 백준 풀기 4892 - 숫자 맞추기 게임

XEV 2023. 12. 12. 23:03

자바 백준 4892번

브론즈 3

https://www.acmicpc.net/problem/4892

 

4892번: 숫자 맞추기 게임

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n0으로 이루어져 있다. (0 < n0 < 1,000,000) 입력의 마지막 줄에는 0이 하나 주어진다.

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 수학, 구현, 사칙연산

 

 

 

 

 

코드 보기

import java.util.Scanner;

public class Main {
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int caseNumber = 1; // 테스트 케이스 번호 초기화
        
        while (true) {
            int n0 = sc.nextInt(); // n0 입력 받기
            if (n0 == 0) { // 입력이 0이면 반복문 종료
                break;
            }
            
            String n1Type = checkN1(n0); // n1이 홀수인지 짝수인지 판별
            int n4 = calculateN4(n0); // n4 계산
            
            System.out.println(caseNumber + ". " + n1Type + " " + n4); // 결과 출력
            caseNumber++; // 테스트 케이스 번호 증가
        }
    }
    
    // n1이 홀수인지 짝수인지 판별하는 함수
    public static String checkN1(int n0) {
        int n1 = 3 * n0;
        if (n1 % 2 == 0) {
            return "even";
        } else {
            return "odd";
        }
    }
    
    // n4를 계산하는 함수
    public static int calculateN4(int n0) {
        int n1 = 3 * n0;
        int n2;
        if (n1 % 2 == 0) {
            n2 = n1 / 2;
        } else {
            n2 = (n1 + 1) / 2;
        }
        int n3 = 3 * n2;
        int n4 = n3 / 9;
        return n4;
    }
    
}