백준 Tri-du

KIMYEONGJUN·2025년 1월 13일
0
post-thumbnail

문제

내가 생각했을때 문제에서 원하는부분

A entrada consiste de uma ´unica linha que contém dois inteiros, A (1 ≤ A ≤ 13) e B (1 ≤ B ≤ 13) indicando os valores das duas primeiras cartas recebidas.

Seu programa deve produzir uma única linha com um inteiro representando o valor da carta que maximiza a probabilidade de o jogador ganhar a partida.

내가 이 문제를 보고 생각해본 부분

BufferedReader를 사용하여 한 줄의 입력을 읽고, 공백을 기준으로 나누어 input 배열에 저장한다.
정수 변환:
입력된 문자열을 정수형으로 변환하여 각각 A와 B에 저장한다.
세 번째 카드 결정:
A와 B의 값이 같은 경우, 세 번째 카드는 A(또는 B)와 같은 값으로 설정한다.
이는 승리 확률을 높이기 위한 전략이다.
A와 B가 다를 경우, 두 값 중 큰 값을 세 번째 카드로 선택해준다.
이는 승리 확률을 최대화하기 위한 선택이다.
최적의 세 번째 카드 값을 출력해준다.

코드로 구현

package baekjoon.baekjoon_26;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

// 백준 13597번 문제
public class Main898 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] input = br.readLine().split(" ");

        int A = Integer.parseInt(input[0]);
        int B = Integer.parseInt(input[1]);

        // 세 번째 카드의 최적 값을 결정하기
        int bestCard;

        // A와 B가 같은 경우, 세 번째 카드도 A 또는 B와 같아야 승리 확률이 가장 높음
        if(A == B) {
            bestCard = A;
        } else {
            bestCard = Math.max(A, B); // A와 B가 다를 경우, 둘 중 큰 값으로 세 번째 카드를 선택
        }

        System.out.println(bestCard);
        br.close();
    }
}

마무리

코드와 설명이 부족할수 있습니다. 코드를 보시고 문제가 있거나 코드 개선이 필요한 부분이 있다면 댓글로 말해주시면 감사한 마음으로 참고해 코드를 수정 하겠습니다.

profile
Junior backend developer

0개의 댓글

관련 채용 정보