HDU 5999(模拟&贪心_H题)解题报告

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5999

-----------------------------------------------------------------------------------

题意:三杯咖啡,免费一杯最便宜的。

思路:先排序,求和,然后减去第3,6,9,…………项的值。

代码:

#include<cstdio>
#include<algorithm>
using namespace std;

bool cmp(int a,int b){
    return a>b;
}
int c1=0;
int main(void){
    int T =0;
    scanf("%d",&T);
    for(int j=0;j<T;j++){
        int N =0;
        scanf("%d",&N);
        int a[N]={0};
        int sum=0;
        for(int i=0;i<N;i++){
            scanf("%d",&a[i]);
            sum+=a[i];
            
        }
        sort(a,a+N,cmp);
        if(N>=3){
            int k=2;
        while(k<N){
            sum-=a[k];
            k=k+3;
            }
        }
        c1++;
        printf("Case #%d: %d\n",c1,sum);
    }

    return 0;

}
View Code

 

posted @ 2018-01-22 08:59  caomp  阅读(80)  评论(0)    收藏  举报