SMALL
안녕하세요 오늘은 단순 브루트 포스 문제를 풀어보겠습니다
이 문제는 상식과는 다르게 삼중 for문으로 단순하게 풀어도 시간이 0ms이 나옵니다
코드:
#include <bits/stdc++.h>
#include <vector>
using namespace std;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int N, M,ans, min = 9999999;
cin>>N>>M;
vector<int> v(N);
for(int i = 0; i<N; i++){
cin>> v.at(i);
}
int sum;
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++){
sum = v.at(i) + v.at(j) + v.at(k);
if(sum>M){
continue;
}
if(M-sum<min){
min = M-sum;
ans = sum;
}
}
}
}
cout<<ans<<endl;
}
LIST
'BOJ 문제풀이' 카테고리의 다른 글
백준 1085번 c++ 풀이 (0) | 2021.08.01 |
---|---|
백준 2231 c++ 풀이 (0) | 2021.07.31 |
백준 9020 c++ 풀이 (0) | 2021.07.31 |
백준 4948 c++ 풀이 (0) | 2021.07.31 |
백준 11653 c++ 풀이 (0) | 2021.07.31 |