有些lp?
查看原帖
有些lp?
414231
_Fatalis_楼主2021/10/14 16:04

这是我的代码:

#define int long long
using namespace std;

struct Edge{
	int from,to;
};
vector<Edge> edges;
vector<int> G[200001];

void ins(int from,int to)
{
	edges.push_back({from,to});
	edges.push_back({to,from});
	G[from].push_back(edges.size()-2);
	G[to].push_back(edges.size()-1);
}

int w[200001];
main()
{
	int n,u,v,ans1=-99999,ans2;
	cin>>n;
	for(int i=1;i<n;i++) cin>>u>>v,ins(u,v);
	for(int i=1;i<=n;i++) cin>>w[i];
	for(int i=1;i<=n;i++)
	{
		int sum1=0,sum2=0;//pfh,wqpfh
		int max1=0,max2=0;
		for(int j=0;j<G[i].size();j++)
		{
			Edge e=edges[G[i][j]];
			sum1=(sum1+w[e.to]*w[e.to])%10007;
			sum2=(sum2+w[e.to])%10007;
			if(w[e.to]>max2) max2=w[e.to];
			if(w[e.to]>max1) max2=max1;max1=w[e.to];
		}
		sum2=sum2*sum2%10007;
		ans1=max(ans1,max1*max2);
		ans2+=sum2-sum1;ans2%=10007;
	}
	cout<<ans1<<" "<<ans2<<endl;
	return 0;
}

define int long long 样例错了,没有 define 就对了;

结果提交上去,define 了对一个点,没有define 就全哇??

help!

2021/10/14 16:04
加载中...