QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#442503#8743. 转化Jowaire#WA 89ms4516kbC++14778b2024-06-15 12:27:402024-06-15 12:27:40

Judging History

你现在查看的是最新测评结果

  • [2024-06-15 12:27:40]
  • 评测
  • 测评结果:WA
  • 用时:89ms
  • 内存:4516kb
  • [2024-06-15 12:27:40]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
const int N=103,M=1003;
ll n,m,sum,a[N],f[N],g[N],c[M],len[M],b[M][N];
int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++)cin>>a[i],sum+=a[i]*n*n;
	for(int i=1;i<=m;i++)
	{
		cin>>c[i]>>len[i];
		for(int j=1;j<=len[i];j++)cin>>b[i][j];
	}
	for(int t=1;t<=n;t++)
	{
		for(int i=1;i<=n;i++)f[i]=i==t;
		for(int tim=1;tim<=n*n*n;tim++)
		{
			for(int i=1;i<=n;i++)g[i]=f[i];
			for(int i=1;i<=m;i++)
			{
				ll x=0;
				for(int j=1;j<=len[i];j++)x+=g[b[i][j]];
				f[c[i]]=max(f[c[i]],x);
			}
			ll cnt=0;
			for(int i=1;i<=n;i++)cnt+=f[i]==g[i];
			if(cnt==n)break;
		}
		ll s=0;
		for(int i=1;i<=n;i++)s+=f[i]*a[i];
		if(s>sum)cout<<"infinity"<<endl;
		else cout<<s<<endl;
	}
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 89ms
memory: 4516kb

input:

100 1000
327 833 558 253 722 710 811 779 789 919 750 288 611 674 670 264 815 701 304 615 9 943 713 633 392 706 687 847 78 999 368 55 913 61 686 512 696 0 695 285 485 877 533 54 621 925 339 319 597 536 285 701 186 933 234 360 284 546 545 185 112 735 147 851 824 512 695 734 237 381 777 449 880 675 614...

output:

infinity
-3526462776252277019
965
infinity
-6765287234726851858
infinity
infinity
infinity
2007265
infinity
256902392
infinity
-6914791635939136112
infinity
-2040466223457275811
128450953
infinity
infinity
-6904561699137485275
infinity
infinity
infinity
infinity
infinity
infinity
infinity
-634038392...

result:

wrong answer 1st lines differ - expected: '2155053232761438', found: 'infinity'