NBUT 1218 You are my brother
[1218] You are my brother
- 时间限制: 1000 ms 内存限制: 131072 K
- 问题描述
- Little A gets to know a new friend, Little B, recently. One day, they realize that they are family 500 years ago. Now, Little A wants to know whether Little B is his elder, younger or brother.
- 输入
- There are multiple test cases.
For each test case, the first line has a single integer, n (n<=1000). The next n lines have two integers a and b (1<=a,b<=2000) each, indicating b is the father of a. One person has exactly one father, of course. Little A is numbered 1 and Little B is numbered 2.
Proceed to the end of file. - 输出
- For each test case, if Little B is Little A’s younger, print “You are my younger”. Otherwise, if Little B is Little A’s elder, print “You are my elder”. Otherwise, print “You are my brother”. The output for each test case occupied exactly one line.
- 样例输入
5 1 3 2 4 3 5 4 6 5 6 6 1 3 2 4 3 5 4 6 5 7 6 7
- 样例输出
You are my elder You are my brother
- 提示
无
- 来源
辽宁省赛2010
题目意思很简单,输入N对数a,b,表示b是a的父亲,最后求的是1和2的关系,也就是树的深度。(注意,若a和b不在同一棵树上,则他们的关系为brother)代码一:#include <cstring> #include <cstdio> int main() {int n,x,y;int ans[2005];while(~scanf("%d",&n)) {memset(ans,0,sizeof(ans));for(int i=0; i<n; i++) {scanf("%d%d",&x,&y);ans[x]=y;}int temp=1,a=0,b=0;while(ans[temp]){a++;temp=ans[temp];}temp=2;while(ans[temp]!=0) {b++;temp=ans[temp];}if(a>b)printf("You are my elder\n");else if(a<b)printf("You are my younger\n");elseprintf("You are my brother\n");}return 0; }
代码二:#include <cstdio> using namespace std; int main() {int n,x,y;int la,lb,a,b;while(~scanf("%d",&n)) {la=1; lb=2; a=0; b=0;while(n--){scanf("%d%d",&x,&y);if(la!=lb) {if(x==la) {la=y; a++;}if(x==lb) {lb=y; b++;}}}if(a>b)printf("You are my elder\n");else if(a<b)printf("You are my younger\n");elseprintf("You are my brother\n");}return 0; }
代码三:#include <cstdio> int fa[2010]; int n,x,y; int Find(int x,int &H) {while(x != fa[x]) {x = fa[x];H++;}return x; } int main() {while(~scanf("%d",&n)) {for(int i = 1; i <= 2000; i++) //用并查集时,初始化要注意上限,如果用n会TLEfa[i] = i;while(n--) {scanf("%d %d",&x,&y);fa[x] = y;}int a = 0 , b = 0 ;int f1 = Find( 1 , a );int f2 = Find( 2 , b );if(f1 != f2) //此时 1 和 2 并不在同一棵树上printf("You are my brother\n");else {if(a > b)printf("You are my elder\n");else if(a < b)printf("You are my younger\n");elseprintf("You are my brother\n");}}return 0; }
以上代码 有一部分是根据网上题解思路所写的,据说这题还可以用 DFS+线段树来做,只是目前还没搞懂,等待更新……
NBUT 1218 You are my brother相关推荐
- 阿里云nginx服务器多站点的配置
Fighting! 欲戴皇冠,必承其重! 目录视图 摘要视图 订阅 [活动]Python创意编程活动开始啦!!! CSDN日报20170426 --<四无年轻人如何逆袭> [C ...
- NBUT 1457 Sona(莫队算法+离散化)
[1457] Sona 时间限制: 5000 ms 内存限制: 65535 K 问题描述 Sona, Maven of the Strings. Of cause, she can play the ...
- You are my brother
You are my brother 时间限制: 1 Sec 内存限制: 128 MB 题目描述 Little A gets to know a new friend, Little B, recen ...
- 浅析Avicii的MV Hey Brother
date: 2017-04-10 20:30:19 其实这篇随感早应在一个月之前就写完的,但是笔者刚从老家来到北京,需要安顿各种事情,再加上自己比较懒上班比较忙,每天晚上回到家,都是直接趴在床上睡了. ...
- HNUSTOJ-1257 You are my brother
1257: You are my brother 时间限制: 1 Sec 内存限制: 128 MB 提交: 39 解决: 15 [提交][状态][讨论版] 题目描述 Little A gets t ...
- mfc cstring 写入文件_兄弟Brother单色激光传真一体机MFC系列不能写入此文件夹提示解决方案...
受影响机型,所有使用ControlCenter3软件的机型,WIN10系统,基本上都受影响.包括但不限于MFC-230.MFC-7340,MFC-7450等. 错误提示: 不能写入此文件夹 <M ...
- 计蒜客 28437.Big brother said the calculation-线段树+二分-当前第k个位置的数 ( ACM训练联盟周赛 M)...
M. Big brother said the calculation 通过线段树维护. 这个题和杭电的一道题几乎就是一样的题目.HDU5649.DZY Loves Sorting 题意就是一个n的排 ...
- 信息学奥赛一本通(1218:取石子游戏)
1218:取石子游戏 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 8837 通过数: 4144 [题目描述] 有两堆石子,两个人轮流去取.每次取的时候, ...
- 1218 图片对齐模式
1218 图片对齐模式 行线 图片对齐模式 作用于img标签上
最新文章
- UnicodeEncodeError: ‘latin-1‘ codec can‘t encode characters in position: ordinal not in range(256)
- 关于 Oracle DB CONSTRAINT约束的一些SQL ORA-02292: integrity constraint violated
- gcc - lm的含义
- MSE | 阿里巴巴云原生网关三位一体的选择与实践
- iptables学习笔记
- Scala Array sum recursive call
- 【java】如何在IDEA 中查看 Class文件的汇编
- 用imspost制作catia后处理_为什么我推荐你用3D打印技术制造模具?
- 优先级反转之futex(一)
- 浅谈 wxWindows FrameWork
- 高等数学(第七版)同济大学 习题2-3 个人解答
- 北航计算机组成原理课程设计-2020秋 PreProject-Verilog HDL与ISE-ISE的获取和使用
- 模拟信号采样与AD转换
- PyG教程(2):图数据
- 读吴军博士新浪微博(2012.09-2014.12)信息整理
- M25F1 4G全网通终端的技术应用
- 登陆页面+匹配数据库+提示登陆成功或失败
- python小技巧:300行代码实现俄罗斯方块
- UI设计是什么,就业前景怎么样?
- WIN10 共享 访问WIN7提示 出现“你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问
热门文章
- 常见编码介绍。一个字符在不同编码中分别占几个字节(新手向)
- 智能书包方案——智能书包重力测量模块CSM92F32
- 微信分享不显示右边缩略图
- [转]如何解决Windows图片预览窗口无法显示图片缩略图
- 少儿编程 | 探讨C++课程、MIT Scratch课程、python课程、Noi竞赛、蓝桥怎么引导?如何才能让小孩子飞的更高?附开发工具的下载与安装
- SVN检出报错,SVN更新时忽略指定文件或文件夹
- python 人民币兑美元汇率代码_Python获取美元人民币实时汇率
- (力扣)LeetCode19. 删除链表的倒数第 N 个结点(C++/C语言)
- excal怎么设置模板阈值
- 怎么恢复移动硬盘数据