알고리즘

백준 : : 2798번 블랙잭 - C++ 풀이

green333 2022. 4. 30. 00:00
728x90
SMALL

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

 

2798번: 블랙잭

첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장

www.acmicpc.net

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <vector>
 
using namespace std;
 
int main(void)
{
    int n, m;
    int total, max = 0;
 
    cin >> n >> m;
 
    vector<int> v(n);
 
    for(int i = 0; i < n; i++){
        cin >> v[i];
    }
 
    for(int i = 0; i < n; i++){
        for(int j = (i+1); j < n; j++){
            for(int k = (j+1); k < n; k++){
                total = v[i] + v[j] + v[k];
                if(total > max && total <= m) max = total;
            }
        }
    }
 
    cout << max << endl;
 
    return 0;
}
cs

 

오랜만에 풀어봤더니 감 다 잃었다.. 오늘부터 다시 해보자
LIST