알고리즘/BOJ

[C++] 백준 11508번 - 2 + 1 세일

Jay, Lee 2021. 8. 21. 19:25

정렬을 잘 생각해보면 되는 문제

3개씩 묶고 제일 작은 것을 제외한 숫자를 제외하고

total에 더해주면 된다

 

#include <iostream>
#include <vector>
#include <algorithm>
#include <functional>
using namespace std;

vector<int> v(100001);


int main() {

	int n;
	cin >> n;

	for (int i = 0; i < n; i++) {
		cin >> v[i];
	}

	sort(v.begin(), v.end(), greater<int>());

	int total = 0;

	for (int i = 0; i < n; i++) {
		total += v[i] + v[i + 1];
		i += 2;
	}

	cout << total << '\n';

	return 0;
}