코드포스(CodeForce)

Codeforces Round #446 (Div. 2) - A. Greed

cepiloth 2018. 8. 17. 15:47
반응형


1. 문제

남은 콜라를 두개의 병을 선택하여 담을 수 있는지를 판단하는 문제


2. 알고리즘

키워드 - 구현


정형화 되어 있는 sort 를 사용하기 보다는 직접 필요한 정보만 추출하는 방법을 생각해보자.

STL 을 사용 하다보니 편한거에 익숙해지는 거같다. 물론 직접짜기는 어렵겠지만...



3. 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <vector>
#include <functional>         // greater ��� ���� �ʿ�  
using namespace std;
 
int n, k, persons, valids;
 
 
int main() {
 
    int n; 
 
    cin >> n;
 
    long long sum = 0;
    for (int i =0; i<n;i++) {
        int a ;
        cin >> a;
        sum += a;
    }
 
    vector<long long> arr(n);
 
    for (int i =0; i<n;i++) {
        cin >> arr[i];
    }
 
    sort(arr.begin(), arr.end(), greater<long long>());
 
    long long sol = arr[0+ arr[1];
 
    if (sol >= sum){
        cout << "YES" << endl;
    } else {
        cout << "NO" << endl;
    }
 
    return 0;
}
cs


반응형