博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 1330
阅读量:4963 次
发布时间:2019-06-12

本文共 917 字,大约阅读时间需要 3 分钟。

题意:给你一棵树的上的两个点,要你求这两个点的最近的父亲节点。

第一行的是m案例数

第二行给你个N,代表有N-1种父子关系,其中a b,a是b的父亲。

第N行就是要你求这两个点的最近的父亲节点。

思路:很简单,不用discuss里面的那些,就直接一个递归寻找出第一个点的所以父亲节点,并做好标记,然后用递归寻找第二个点的父亲节点,如果碰到了标记的话,那么这个点就是他们的最近的那个父亲节点。

 

1 #include 
2 #include
3 #define l 100100 4 5 bool mark[l]; 6 int belg[l],ans,flog; 7 8 int bfs(int x) 9 {10 if(mark[x]) {11 mark[x]=false;12 if(!belg[x]) return 0;13 bfs(belg[x]);14 }15 return 0;16 }17 int bfs1(int x)18 {19 if(belg[x]&&mark[x]) bfs1(belg[x]);20 if(!mark[x]&&!flog){21 ans=x;22 flog=1;23 return 0;24 }25 return 0;26 }27 28 int main()29 { 30 int m,n,a,b;31 scanf("%d",&m);32 while(m--)33 {34 scanf("%d",&n);35 memset(belg,0,sizeof(belg));36 memset(mark,true,sizeof(mark));37 for(int i=0;i

 

转载于:https://www.cnblogs.com/Tree-dream/p/5707622.html

你可能感兴趣的文章
页面访问的常见错误码解析
查看>>
hdu 3183 A Magic Lamp 贪心
查看>>
ubuntu16系统磁盘空间/dev/vda1占用满的问题
查看>>
面试题14 调整数组顺序使奇数位于偶数前面
查看>>
grid网格布局
查看>>
flask简单的注册功能
查看>>
JSP常用标签
查看>>
通过自动回复机器人学Mybatis---基础版
查看>>
Java中的super的使用
查看>>
常见文件下载后缀
查看>>
第四章 生命周期函数--36 结合Node手写JSONP服务器剖析JSONP原理
查看>>
Java中的return this
查看>>
Java调用淘宝API demo源代码
查看>>
跟我学Android之十一 列表和适配器
查看>>
JS学习
查看>>
Dreamweaver安装须知
查看>>
SQL Server 2008 Database Mirror - DB 镜像 - Some Key Learnings
查看>>
iPhone开机键坏了如何开机
查看>>
从C 到 OC----从面向过程到面向对象的转变
查看>>
Code analysis 笔记
查看>>