一棵树,碰到改变转向的边就异或一下,从1dfs一遍 #include<iostream> #include<cstdio> using namespace std; const int N=1005; int n,h[N],cnt,v[N]; struct qwe { int ne,to,va; }e[N<<1]; int read() { int r=0,f=1; char p=getchar(); while(p>'9'||p<'0') { if(p==…
本来想爆手速写个树剖,然而快下课了就手残写了了个n方的短小-- 暴力把查询的两个点中深的一个跳上来,加上边权,然后一起跳加边权就行了 #include<iostream> #include<cstdio> using namespace std; const int N=1005; int n,q,h[N],cnt,fa[N],va[N],de[N]; struct qwe { int ne,to,va; }e[N<<1]; int read() { int r=0,f…
直接枚举 ------------------------------------------------------------------------------- #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #define rep( i , n ) for( int i = 0 ; i < n ; ++i ) #define clr( x…