-
브포해도 O(n^3) 이므로 그냥 브포 돌립니다.
#include <bits/stdc++.h> using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N, M, arr[120] = {}, mx=0; cin >> N >> M; for (int i = 0; i < N; i++) cin >> arr[i]; for (int i = 0; i < N; i++) { for (int j = i + 1; j < N; j++) { for (int k = j + 1; k < N; k++) { int can = arr[i] + arr[j] + arr[k]; if (can <= M && can > mx) mx = can; } } } cout << mx; }