求助
查看原帖
求助
387236
杨誉yy楼主2021/1/29 16:58

我发了这篇帖子,说明我的脑子和题面中的一个有坑(

先贴代码

#include<cstdio>
#include<algorithm>
using namespace std;
int i,n,x,a,b,cnt,sum,k;
int s[300000],extra[300000];
double ans;
int main()
{
	cnt=1;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		printf("%d ",cnt);
		scanf("%d",&b);
		if(b==1)
		{
			scanf("%d %d",&a,&x);
			a=min(a,cnt);
			extra[a]+=x;
			sum+=a*x;
			if(cnt==0)
			{
				ans=0;
			}
			else
			{
				ans=1.0*sum/cnt;
			}
			printf("%.6llf\n",ans);
			continue;
		}		
		if(b==2)
		{
			scanf("%d",&k);
			s[++cnt]=k;
			sum+=k;
			ans=1.0*sum/cnt;
			printf("%.6llf\n",ans);
			continue;
		}
		if(cnt>=2)
		{
			sum=sum-s[cnt]-extra[cnt];
			cnt--;
			extra[cnt]+=extra[cnt+1];
			extra[cnt+1]=0;
		}
		ans=1.0*sum/cnt;
		printf("%.6llf\n",ans);
	}		
}

第一个点就WA "expected:0.5000000,found:1.0000000"

2021/1/29 16:58
加载中...