23年暑期课程 贪心专题2 最大平均数方案WA0 #求助

#include<bits/stdc++.h>
using namespace std;
int n,a,b,v[55],ans=1,sum=0;
float maxl=-999,pjz[55];
bool cmp(int a,int b)
{
	return a>b;
}
int main()
{
	scanf("%d%d%d",&n,&a,&b);
	for(int i=1; i<=n; i++) scanf("%d",&v[i]);
	sort(v+1,v+n+1,cmp);
	for(int i=1,j=1; i<=b; i++)
	{
		sum+=i;
		if(i>=a)
		{
			pjz[j]=sum/i;
			j++;
			maxl=max(maxl,pjz[j]);
		}
	}
	for(int i=1;i<=b;i++) if(pjz[i]==maxl) ans++;
	printf("%.6f\n%d",&maxl,&ans);
	return 0;
}


这是本地测试的样例,检查了半个小时不知道为什么输出错误
image

发一下题目

1 个赞

发个题目呗

1 个赞

时间:1s 空间:256M

题目描述:

有n个数,可以选取最少a个最多b个,使得所选的数的平均值最大。求可能的最大平均值 和 在平均值最大的情况下的方案数

输入格式:

第一行3个数,n,a,b(1<=n<=50,1<=a<=b<=n)

第二行,n个整数 v1,v2,…,vn(1≤vi≤1015)

输出格式:

第一行代表可能的最大平均值

第二行平均值最大的情况下的方案数

样例输入1:

5 2 2 1 2 3 4 5

样例输出1:

4.500000 1

发底下了,谢谢佬awa

发好啦.-.