백준 2798 블랙잭 / C++

이유참치·2025년 12월 15일

백준

목록 보기
92/249

문제 : 2798

풀이 point

N의 범위가 3<=N<=1003<= N <= 100d이므로 전수조사를 실행할 수 있다.

풀이 방법

3개의 카드를 골라 내어 M과 최대한 가깝게 만들기 위한 전수조사를 실행한다.

코드

//백준 2798, 블랙잭
#include <iostream>
#include <climits>

int card[101];
int main(){

    int N, M;

    std::cin >> N >> M;

    for(int i{0}; i<N; ++i){
        std::cin >> card[i];
    }
    int min{INT_MAX}; 
    for(int i{0}; i<N-2; ++i){
        for(int j{i+1}; j<N-1; ++j){
            for(int k{j+1}; k<N; ++k){
                int val = card[i] + card[j] + card[k];
                if(val <= M) min = std::min(min, M-val);
            }
        }
    }

    std::cout << M-min;

    return 0;
}
profile
임아리 - 대학생

0개의 댓글