BOJ 문제풀이

백준 2798 c++ 풀이

koreasunoo 2021. 7. 31. 12:05
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