閱讀538 返回首頁    go 阿裏雲 go 技術社區[雲棲]


poj 1477 Box of Bricks

很簡單的題目,我看完題到AC大概一共就7、8分鍾。。。同樣比賽的時候希望遇到

不過不太完美的是,我presentation error了一次,原因就是結尾還應該打一個空行。。。如果我繼續這麼不仔細,真的會吃大虧!吸取教訓吧。。。

一道很簡單的數學問題,思路是:先求平均數,然後求出每個數與平均數的差(絕對值)並累加,最後輸出累加和的一半即可


AC的代碼:

#include <iostream>

inline int Abs(int n){return n<0?(-n):n;}

int main()
{
	int count=0;
	int n,i;
	int a[55];
	int sum;
	int result;
	//n!=0 等價於 n
	while(scanf("%d",&n) && n)
	{
		count++;
		printf("Set #%d\n",count);

		sum=0;
		for(i=1;i<=n;i++)
		{
			scanf("%d",&a[i]);
			sum+=a[i];
		}

		sum/=n;
		result=0;
		for(i=1;i<=n;i++)
			result+=Abs(sum-a[i]);

		printf("The minimum number of moves is %d.\n\n",result/2);
	}

	return 0;
}


最後更新:2017-04-03 14:54:00

  上一篇:go Java IO--管道流PipedOutputStream/PipedInputStream
  下一篇:go Java IO--內存操作流ByteArrayInputStream/ByteArrayOutputStream