树的应用
#描述#
一棵节点个数为n的树, 共有n-1条边. 每条边都有一个颜色属性,黑色或者白色. 对于一棵给定的树,如果把所有的黑色边去掉,那么这棵树将变成多个部分(连通分支).
<br><br>
树上两个不同的节点u,v都有一条唯一的最短路径(u->v). 现在有一个操作,就是把u到v的路径上的所有边的属性反转(黑色变白色,白色变黑色).
<br><br>
给定一棵树(初始时,边全部都是黑色的!!!)和m个操作,输出每个操作之后树的连通分支数(无视黑色边);
#格式#
##输入格式##
多组数据.每组数据第一行两个整数n,m(1<=n,m<=50000). 接下来n-1行,每行两个数a,b(1<=a,b<=n, a!=b)表示这棵树的边.然后是m行,每行两个整数u,v(1<=u,v<=n, u!=v).
##输出格式##
每组数据输出m行,答案...
#样例1#
##样例输入1##
3 3
1 2
1 3
1 2
1 3
2 3
##样例输出1##
2
1
3
#限制#
2000ms
32768KB
#提示#
huge input ,scanf and printf are recommemded
#来源#
dd