为啥错了
查看原帖
为啥错了
164227
flywan123楼主2020/7/4 14:36
#include<bits/stdc++.h>
using namespace std;
int zj[6001]={0},zhu;
int n,a[6001]={0},l[6001]={0},k[6001]={0};
long long ans=0;
bool flag[6001]={false},d[6001]={false};
int dp(int n)
{
	int sum;
	for(int i=1;i<=n;i++)
	{
		if(k[i]==n)
		{
			d[l[i]]=true;
		}
	}
	for(int i=1;i<=n;i++)
	{
		if(d[i]==false)
		{
			sum+=a[i];
		}
	}
	if(sum>ans)
	{
		return sum;
	}
}
int work(int a)
{
	
}
int main()
{
	
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	for(int i=1;i<=n;i++)
	{
		cin>>k[i]>>l[i];
	}
	for(int i=1;i<=n;i++)
	{
		zj[l[i]]=k[i];
	}
	for(int i=1;i<=n;i++)
	{
		if(zj[i]==0)
		{
			zhu=i;
			break;
		}
	}
	cout<<dp(1);
	return 0;
 }
2020/7/4 14:36
加载中...