쾌락없는 책임 (공부)/알고리즘 문제풀이
백준 2437 저울 - C++ 그리디 알고리즘
허스크
2021. 4. 2. 20:45
반응형
- 2437 : www.acmicpc.net/problem/2437
#include <iostream>
#include <algorithm>
using namespace std;
int arr[1001];
int main(){
int n;
cin >> n;
for(int i = 0; i < n; i++){
cin >> arr[i];
}
sort(arr, arr+n);
int w = 1; //왼쪽 물건 변수
for(int i = 0; i < n; i++){
if(arr[i] > w){
break;
}
w += arr[i];
}
cout << w << "\n";
}
위 문제의 경우 정렬만 되어 있다면 for문을 이용한 그리디 알고리즘이 가능합니다.
algorithm헤더의 sort를 사용해서 배열(또는 벡터)를 정렬해준 뒤 앞에서부터 더하면서 측정 무게를 고르면 된다
반응형