现在的位置: 首页 > 综合 > 正文

2094 平衡女生——弱弱版

2012年01月22日 ⁄ 综合 ⁄ 共 739字 ⁄ 字号 评论关闭
描述

沿着学院路,有北医,北影,北航,北科,北邮,北师,北林,北语等高校,我们都知道,这些学校里的女生数量是不同的,
现在学院路高校共同体做了一个实际不存在的决定,就是要平衡这些高校的女生。所谓平衡,就是让这些高校里的女生数量相同。这就涉及到女生的移动。
所谓女生的移动,就是将一些学校的女生移到另一个学校。移动女生是需要代价的,将一个女生从一个学校移动到另一个学校需要消耗1个单位的代价,
当然,将y个女生从一个学校移动到另一个学校就需要y个代价。现在给出这n所高校里的女生数量,希望你计算一下,能否实现这个目标,如果能,最小代价是多少。

输入

多组测试数据,每组测试数据占两行,第一行一个整数n (1<=n<=20),第二行有N个整数: A1,A2,...,Ai,...,An,分别表示这n所高校里的女生数量。(Ai>=0,int在int范围内)

输出

如果能够实现题目所述的目标,输出最小代价。如果不能,输出-1,对每组测试数据,输出占一行。
结果在int范围内。

样例输入
3
6 8 9
3
9 8 10
样例输出
-1
1

模拟题
#include <stdio.h>


int main()
{
	int n,i,sum,average;
	int a[101];
	int answer;
	while(scanf("%d",&n)!=EOF)
	{
		sum=0;
		answer=0;
		for(i=0;i<n;i++)
		{
			scanf("%d",&a[i]);
			sum+=a[i];
		}
		if(sum%n!=0)
		{
			printf("-1\n");
		}
		else
		{
			average=sum/n;
			for(i=0;i<n;i++)
			{
				if(a[i]<average)
				{
					answer+=average-a[i];
				}
			}

			printf("%d\n",answer);

		}

		


	}
	
	
	return 0;
}

抱歉!评论已关闭.