POJ 1470 LCA 公共祖先
来源:互联网 发布:冬季男士帽子 知乎 编辑:程序博客网 时间:2024/06/05 20:04
裸题一个
/*ID: CUGB-wwjPROG:LANG: C++*/#include <iostream>#include <vector>#include <list>#include <map>#include <set>#include <deque>#include <queue>#include <stack>#include <bitset>#include <algorithm>#include <functional>#include <numeric>#include <utility>#include <sstream>#include <iomanip>#include <cstdio>#include <cmath>#include <cstdlib>#include <cctype>#include <string>#include <cstring>#include <cmath>#include <ctime>#define INF 1111111111#define MAXN 1005#define MAXM 1000005#define L(x) x<<1#define R(x) x<<1|1#define eps 1e-4using namespace std;vector<int>tree[MAXN], ask[MAXN];int father[MAXN], vis[MAXN], ans[MAXN], in[MAXN];int n, m, c;void init(){ for(int i = 0; i <= n; i++) { father[i] = i; vis[i] = 0; tree[i].clear(); ask[i].clear(); ans[i] = 0; in[i] = 0; }}int find(int x){ if(father[x] == x) return x; int t = find(father[x]); father[x] = t; return t;}void LCA(int u){ father[u] = u; int size = tree[u].size(); for(int i = 0; i < size; i++) { LCA(tree[u][i]); father[tree[u][i]] = u; } vis[u] = 1; size = ask[u].size(); for(int i = 0; i < size; i++) if(vis[ask[u][i]] == 1) ans[find(ask[u][i])]++;}int main(){ int x, y, t; while(scanf("%d", &n) != EOF) { init(); for(int i = 1; i <= n; i++) { scanf("%d:(%d)", &x, &t); while(t--) { scanf("%d", &y); tree[x].push_back(y); in[y]++; } } scanf("%d", &m); for(int i = 1; i <= m; i++) { scanf(" (%d %d)", &x, &y); ask[x].push_back(y); ask[y].push_back(x); } for(int i = 1; i <= n; i++) if(in[i] == 0) LCA(i); for(int i = 1; i <= n; i++) if(ans[i]) printf("%d:%d\n", i, ans[i]); } return 0;}
- POJ 1470 LCA 公共祖先
- poj 1470 LCA公共祖先次数
- POJ 1470 Closest Common Ancestors【最近公共祖先LCA】
- poj 3694 Network LCA最小公共祖先
- poj 1330 LCA最近公共祖先
- poj 1330 LCA 最近公共祖先
- poj 1986 最近公共祖先 (lca 倍增)
- lca最小公共祖先祖先
- 最近公共祖先LCA
- 最近公共祖先(LCA)
- Lca 最近公共祖先
- LCA----最近公共祖先
- LCA (最近公共祖先)
- LCA最近公共祖先
- LCA 最近公共祖先
- 最近公共祖先 LCA
- LCA--最近公共祖先
- LCA(最近公共祖先)
- 获取本机外网IP地址(External IP Address)示例
- Delphi生成Dll文件
- 初学java 之 环境变量配置win7 and linux
- 复制和删除指定文件夹下面的所有的文件文件夹
- 《C程序设计语言》——类型转换
- POJ 1470 LCA 公共祖先
- 《Windows程序设计》之鼠标
- X游戏发包CALL
- 篮球技巧 运球
- PHP经常容易记乱的知识
- HTML之Label标签的for属性
- 刚刚开通的博客
- RT3070 STA 驱动移植
- 各种数据库的优缺点