POJ 1477 ( 貪心 )

POJ 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;
 }


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章