#include <stdio.h>
int main()
{
int N, M, Nn[100];
int sum = 0;
int max = 0;
scanf("%d %d", &N, &M);
for (int i = 0; i < N; i++)
{
scanf("%d", &Nn[i]);
}
for (int i = 0; i < N; i++)
{
for (int j = i+1; j < N ; j++)
{
for (int k = j + 1; k < N; k++)
{
sum = Nn[i] + Nn[j] + Nn[k];
if (sum > max && sum <= M) //sum>max는 여러 개의 sum 중 가장 큰(가장 M에 가까운) 수를 찾기 위함
max = sum;
}
}
}
printf("%d\n", max);
}
3중 for문을 활용하면 쉽게 3개의 카드를 선택할 수 있다.
'🧐 Algorithm' 카테고리의 다른 글
[백준 7568번 C/C언어] 덩치 (0) | 2021.01.27 |
---|---|
[백준 2231번 C/C언어] 분해합 (0) | 2021.01.27 |
[백준 10950번 C/C언어] A+B - 3 (0) | 2021.01.27 |
[백준 2739번 C/C언어] 구구단 출력 (0) | 2021.01.27 |
알고리즘 공부 방법 (0) | 2021.01.27 |