POJ 1477(贪心)

来源:互联网 发布:linux安装jar命令 编辑:程序博客网 时间:2024/05/11 18:33

题目链接:http://poj.org/problem?id=1477

 典型的贪心算法,很水,直接贴代码    PS:需要注意的就是每组数据之后都有一个空行

#include <stdio.h>#include <algorithm>using namespace std;bool cmp(const int a,const int b) { return a>b; }int main(){    int bricks[55];    int n,l=0,i,sum,ave,ans;    while(scanf("%d",&n)==1)    {        if(n==0) break;        l++;sum=0;ans=0;        for(i=1;i<=n;i++){           scanf("%d",&bricks[i]);           sum+=bricks[i];        }        sort(bricks+1,bricks+n+1,cmp);        ave=sum/n;        //printf("ave=%d\n",ave);        for(i=1;i<=n;i++)          if(bricks[i]>ave) ans+=bricks[i]-ave;        printf("Set #%d\n",l);        printf("The minimum number of moves is %d.\n\n",ans);    }    return 0;}