inblog logo
|
LHS's Study Space
    알고리즘문제풀기랜덤마라톤

    [랜덤 마라톤] 동전 게임(10837)

    lhs's avatar
    lhs
    Dec 19, 2024
    [랜덤 마라톤] 동전 게임(10837)
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리
    www.acmicpc.net
    https://www.acmicpc.net/problem/10837
    notion image
    notion image

    1. 문제 풀이 아이디어

    • 남은 횟수 동안 점수가 같아질 수 있는지 계산하여 문제를 해결할 수 있다.

    2. 나의 정답 코드

    public class Main { public static void main(String[] args) throws IOException { BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); StringBuilder stringBuilder = new StringBuilder(); int k = Integer.parseInt(bufferedReader.readLine()); int c = Integer.parseInt(bufferedReader.readLine()); for (int i = 0; i < c; i++) { StringTokenizer stringTokenizer = new StringTokenizer(bufferedReader.readLine()); int m = Integer.parseInt(stringTokenizer.nextToken()); int n = Integer.parseInt(stringTokenizer.nextToken()); if (m > n) { if (n + k - m + 2 < m) { stringBuilder.append("0\n"); continue; } } else if (m < n) { if (m + k - n + 1 < n) { stringBuilder.append("0\n"); continue; } } stringBuilder.append("1\n"); } System.out.print(stringBuilder); bufferedReader.close(); } }

    3. 정리

    • m과 n을 입력으로 받아서, m이 n보다 크거나 작은 경우를 나누어 계산한다.
    • 남은 횟수를 모두 성공했을 때의 점수에 1을 더하여 계산하고, 이를 바탕으로 불가능한 경우를 판단한다.
    • m이 더 클 경우, n은 한 번 더 던질 수 있으므로 1을 추가적으로 더한다.
    • 조건문에서 불가능한 상황이라 판단되면 0을 출력하고, 가능하다면 1을 출력하여 문제를 해결한다.
    Share article
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리

    LHS's Study Space

    RSS·Powered by Inblog