本文主要是介绍HDU Box of Bricks,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目传送门:
http://acm.hdu.edu.cn/game/entry/problem/show.php?chapterid=1§ionid=2&problemid=8
本题规律在于将每个砖块的高度与现有高度作差,然后将正数部分想加即可。
#include<stdio.h>
#include<iostream>
using namespace std;
//HDU Box of Bricks
int main(){int setNo=1;int T=1;int array[100]; //数组开大一点不要使用动态内存分配scanf("%d",&T);while(T!=0){getchar();int average=0;int i=0;int T1=T;while(T1--){scanf("%d",&array[i]);average+=array[i];i++;}average=average/T;int move_times=0;int temp=0;for(int j=0;j<T;j++){temp=array[j]-average;if(temp>0)move_times+=temp;}//注意再次输出空行printf("Set #%d\nThe minimum number of moves is %d.\n\n",setNo,move_times);scanf("%d",&T);setNo++;}return 0;
}
这篇关于HDU Box of Bricks的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!