题意:给出A班和B班的学生成绩,如果bob(A班的)在B班的话,两个班级的平均分都会涨。求bob成绩可能的最大,最小值。
A班成绩平均值(不含BOB)>A班成绩平均值(含BOB) && B班成绩平均值(不含BOB)< B班成绩平均值(含BOB)
求解两个不等式,注意精度
AC代码:
#include <stdio.h>
int main()
{
int t;
int i,n,m;
double a[100],b[100];
scanf("%d",&t);
while(t--)
{
scanf("%d %d",&n,&m);
double sum1,sum2,ave1,ave2;
int ans1,ans2;
sum1=sum2=0;
for(i=0;i<n-1;i++)
{
scanf("%lf",&a[i]);
sum1+=a[i];
}
for(i=0;i<m;i++)
{
scanf("%lf",&b[i]);
sum2+=b[i];
}
ave1=sum1/(n-1);//没bob的自己班
ave2=sum2/m;//没bob的其他班
double temp1=ave1*n-sum1;
double temp2=ave2*(m+1)-sum2;
if((int)temp1*1.0==temp1)
ans1=(int)temp1-1;
else
ans1=(int)temp1;
ans2=(int)temp2+1;
printf("%d %d\n",ans2,ans1);
}
return 0;
}