poj3637
水题,只要排好序后,从大到小每三个取一个,加起来就是答案。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>
using namespace std;
const int maxn = 20002;
int main()
{
//freopen("D:\\t.txt", "r", stdin);
int t;
scanf("%d", &t);
while (t--)
{
int n;
int good[maxn];
scanf("%d", &n);
for (int i = 0; i < n; i++)
scanf("%d", &good[i]);
sort(good, good + n);
int ans = 0;
int i = n % 3;
for (;i < n; i += 3)
ans += good[i];
printf("%d\n", ans);
}
return 0;
}

浙公网安备 33010602011771号