POJ 1330 Nearest Common Ancestors(LCA)

题目链接

数据范围小,暴力乱搞即可。。。LCA是什么,以后研究把。。。

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #include <algorithm>
 5 using namespace std;
 6 int fa[10001],o[10001];
 7 int main()
 8 {
 9     int t,i,n,sv,ev;
10     scanf("%d",&t);
11     while(t--)
12     {
13         memset(fa,0,sizeof(fa));
14         memset(o,0,sizeof(o));
15         scanf("%d",&n);
16         for(i = 1;i <= n-1;i ++)
17         {
18             scanf("%d%d",&sv,&ev);
19             fa[ev] = sv;
20         }
21         scanf("%d%d",&sv,&ev);
22         while(sv != 0)
23         {
24             o[sv] = 1;
25             sv = fa[sv];
26         }
27         while(ev != 0)
28         {
29             if(o[ev])
30             {
31                 printf("%d\n",ev);
32                 break;
33             }
34             ev = fa[ev];
35         }
36     }
37     return 0;
38 }
posted @ 2012-10-16 20:08  Naix_x  阅读(163)  评论(0编辑  收藏  举报