读书人

【hdoj2545】树下战争

发布时间: 2012-09-27 11:11:17 作者: rapoo

【hdoj2545】树上战争

思路:

起初我没看懂题目是什么意思,百度不到,还是谷歌神呀~~~

搜到了一位大神的话,豁然开朗:主要思路是建树之后,看到达根节点的步数少谁就赢了。。。

本身觉得很有难度的一道题,被大神一点拨,瞬间变水题。。。

直接给出代码,有问题的地方欢迎留言^ ^

#include<iostream>using namespace std;int parent[100010];int find(int t){    int num=0;while(t!=parent[t]){    t=parent[t];num++;}return num;}void main(){   int n,m,a,b,x,y;   while(scanf("%d %d",&n,&m),n|m)   {       for(int i=1;i<=n;i++)   parent[i]=i;   for(i=1;i<n;i++)   {       scanf("%d %d",&a,&b);   parent[b]=a;   }   while(m--)   {       scanf("%d %d",&x,&y);   if(find(x)<=find(y))   printf("lxh\n");   else   printf("pfz\n");   }   }}

<我想知道,输入多怎么就不能用cin而只能用scanf呢........个人好喜欢cin,输入方便的说。。>


读书人网 >编程

热点推荐