树上战争 HDU-2545 【并查集】
2017-08-05 15:20
260 查看
题意:两个人A,B在树上的两个节点上,当一个人在一个节点的时候,节点的子树全都属于该者。 谁先占领了另一方的节点,那么该方胜利。
思路: 并查集。 谁离根节点近,谁就是胜利者
思路: 并查集。 谁离根节点近,谁就是胜利者
#include <bits/stdc++.h> using namespace std; typedef long long ll; int n,m; int par[100000+50]; void init() { for(int i=1; i<=n; i++) par[i]=i; } int find(int root) { int cnt=0; while(par[root]!=root) { root=par[root]; cnt++; } return cnt; } int main(void) { while(cin >> n >> m,n,m) { init(); for(int i=1; i<=n-1; i++) { int father,son; scanf("%d%d",&father,&son); par[son]=father;// 建树 } for(int i=1; i<=m; i++) { int x,y; scanf("%d%d",&x,&y); if(find(x)<=find(y))// lxh先手所以有等号 printf("lxh\n"); else printf("pfz\n"); } } }
相关文章推荐
- hdu 2545 树上战争(并查集???)
- hdu 2545 树上战争(加权并查集)
- hdu 2545 树上战争(并查集)
- 树上战争_hdu_2545(并查集).cpp
- HDU 2545 树上战争(并查集)
- HDU 2545 树上战争(并查集)
- hdu 2545 树上战争 并查集
- hdu 2545 树上战争(并查集)
- 树上战争(HDU 2545 并查集求解点到根节点长度)
- HDU 2545 树上战争 (并查集)
- HDU - 2545 树上战争(没有路径压缩的并查集)
- HDU 2545 树上战争(并查集)
- hdu 2545 树上战争(并查集)
- hdu 2545 树上战争(并查集)
- hdu 2545 树上战争(并查集)
- 树上战争 HDU-2545
- hdu 2545 树上战争
- HDU 2545 树上战争(求树的高度)
- hdu 2545 树上战争
- HDU 2545 树上战争 (并查集+YY)