对着官方数据自测和洛谷更新数据后测试都有分,申诉却失败了怎么办
  • 板块灌水区
  • 楼主玖依joy
  • 当前回复21
  • 已保存回复21
  • 发布时间2020/12/16 18:56
  • 上次更新2023/11/5 06:03:37
查看原帖
对着官方数据自测和洛谷更新数据后测试都有分,申诉却失败了怎么办
231709
玖依joy楼主2020/12/16 18:56

RT,非常着急,心态正处于崩溃边缘。 会不会是 ios_base::sync_with_stdio(0); 出问题了?求帮忙看一下。

#include<bits/stdc++.h>
using namespace std;
long long n,k;
long long a[11];
long long c[11];
long long b[500002][2];
long long ans,num;
long long MOD=1000000007;
int flag=0;
void zou1()
{
	long long i;
	for(i=1;i<=n;i++)
	{
		num=(num+1)%MOD;
		c[1]+=b[i][1];
		if(c[1]>a[1]||c[1]<1)
		{
			flag=1;
			return;
		}
	}
	return;
}
void zou2()
{
	long i;
	for(i=1;i<=n;i++)
	{
		num=(num+1)%MOD;
		c[b[i][0]]+=b[i][1];
		if(c[b[i][0]]>a[b[i][0]]||c[b[i][0]]<1)
		{
			flag=1;
			return;
		}
	}
	return;
}
int main()
{
	ios_base::sync_with_stdio(0);
	freopen("walk.in","r",stdin);
	freopen("walk.out","w",stdout);
	long long i1,i2,i3,i4,i5;
	cin>>n>>k;
	for(i1=1;i1<=k;i1++)
		cin>>a[i1];
	for(i1=1;i1<=n;i1++)
		cin>>b[i1][0]>>b[i1][1];
	if(k==1)
	{
		for(i1=1;i1<=a[i1];i1++)
		{
			num=0;
			flag=0;
			c[1]=i1;
			while(flag==0)
				zou1();
			ans=(ans+num)%MOD;
		}
	}
	if(k==2)
	{
		for(i1=1;i1<=a[1];i1++)
		{
			for(i2=1;i2<=a[2];i2++)
			{
				num=0;
				flag=0;
				c[1]=i1;
				c[2]=i2;
				while(flag==0)
					zou2();
				ans=(ans+num)%MOD;
			}
		}
	}
	if(k==3)
	{
		for(i1=1;i1<=a[1];i1++)
		{
			for(i2=1;i2<=a[2];i2++)
			{
				for(i3=1;i3<=a[3];i3++)
				{	
					num=0;
					flag=0;
					c[1]=i1;
					c[2]=i2;
					c[3]=i3;
					while(flag==0)
						zou2();
					ans=(ans+num)%MOD;
				}
			}
		}
	}
	if(k==4)
	{
		for(i1=1;i1<=a[1];i1++)
		{
			for(i2=1;i2<=a[2];i2++)
			{
				for(i3=1;i3<=a[3];i3++)
				{	
					for(i4=1;i4<=a[4];i4++)
					{
						num=0;
						flag=0;
						c[1]=i1;
						c[2]=i2;
						c[3]=i3;
						c[4]=i4;
						while(flag==0)
							zou2();
						ans=(ans+num)%MOD;
					}
				}
			}
		}
	}
	if(k==5)
	{
		for(i1=1;i1<=a[1];i1++)
		{
			for(i2=1;i2<=a[2];i2++)
			{
				for(i3=1;i3<=a[3];i3++)
				{	
					for(i4=1;i4<=a[4];i4++)
					{
						for(i5=1;i5<=a[5];i5++)
						{	
							num=0;
							flag=0;
							c[1]=i1;
							c[2]=i2;
							c[3]=i3;
							c[4]=i4;
							c[5]=i5;
							while(flag==0)
								zou2();
							ans=(ans+num)%MOD;
						}
					}
				}
			}
		}
	}
	cout<<ans;
	fclose(stdin);
	fclose(stdout);
	return 0;
}
2020/12/16 18:56
加载中...