为哈测试点2过不了啊???
查看原帖
为哈测试点2过不了啊???
669036
Planet_Knight楼主2022/8/16 17:05

就一个普普通通的dp,一直90……


#include<bits/stdc++.h>
#define inf 0xffffffff
#define ll long long
using namespace std;
ll n,ans=-inf,k,l=0;
ll dp[105][105];
int main()
{
	scanf("%lld",&n);
	for(ll i=1;i<=n;i++)
	{
		scanf("%lld",&k);
		for(ll j=1;j<=k;j++)
		{
			ll t,s;
			while(scanf("%lld",&t)&&t!=0)
			{
				scanf("%lld",&s);
				s=dp[i-1][t]-s;
				if(dp[i][j]==0) dp[i][j]=s;
				else if(dp[i][j]==inf) dp[i][j]=max(l,s);
				else dp[i][j]=max(dp[i][j],s);
				if(dp[i][j]==0) dp[i][j]=inf;
//				printf("%d %d %d\n",i,j,dp[i][j]);
			}
//			printf("\n");
		}
	}
	for(ll i=1;i<=k;i++)
	{
		if(dp[n][i]==inf) ans=max(ans,l);
		else ans=max(ans,dp[n][i]);
	}
	ans*=-1;
	printf("%lld",ans);
	return 0;
}
2022/8/16 17:05
加载中...