PS/BOJ C++
2798번 - 블랙잭
zpqmdh
2021. 8. 29. 01:50
https://www.acmicpc.net/problem/2798
2798번: 블랙잭
첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장
www.acmicpc.net
#include <iostream>
#define endl '\n'
using namespace std;
int arr[100];
int sum(int i, int j, int k)
{
int result;
result = arr[i] + arr[j] + arr[k];
return result;
}
int main()
{
int N;
int M;
cin >> N >> M;
for(int i=0; i<N; i++)
cin >> arr[i];
int min = 0;
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 a = sum(i, j, k);
if(a <= M && a >= min)
min = a;
}
}
}
cout << min << endl;
return 0;
}