求调 玄
查看原帖
求调 玄
930718
Eason_lyx楼主2025/2/6 13:38
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int n,m,u,v,w,dis[N];
vector<int>g[N],a[N];
void dfs(int node,int fa){
	for(int i=0;i<g[node].size();i++){
		int y=g[node][i];
		if(y==fa){
			dis[node]=dis[fa] xor a[node][i];
			return;
		}
		else
			dfs(y,node);
	} 
}
int main(){
	cin>>n;
	for(int i=1;i<n;i++){
		cin>>u>>v>>w;
		g[u].push_back(v);
		g[v].push_back(u);
		a[u].push_back(w);
		a[v].push_back(w);
	}
	dfs(1,0);
	cin>>m;
	for(int i=1;i<=m;i++){
		cin>>u>>v;
		cout<<(dis[u] xor dis[v])<<endl;
	}
	return 0;
}
2025/2/6 13:38
加载中...