2463 物种分类
时间限制 : 2000/1000 MS(Java/Others) | 内存限制 : 131072/65536 KB(Java/Others)
提交数 : 11 | 通过数 : 2
题目描述
众所周知,生物是按照界门纲目科属种来分类的。界分为原核生物界、原生生物界、菌物界、植物界以及动物界。每个界又分为很多个门,每个门下面又有很多个纲。而查找到每一个物种的路径必定是固定不变的,比如:
绵羊:动物界->脊索动物门->哺乳纲->偶蹄目->牛科->羊属->绵羊;
牦牛:动物界->脊索动物门->哺乳纲->偶蹄目->牛科->牛属->牦牛;
羊驼:动物界->脊索动物门->哺乳纲->偶蹄目->骆驼科->小羊驼属->羊驼。(摘自wikipedia)
绵羊和牦牛都是牛科,而绵羊和羊驼则同属偶蹄目。
由此可见,虽然羊驼名字里有个“羊”字,当相对于牦牛来说,它跟羊的关系还是比较远的。
生命学院的达尔文同学和孟德尔同学就对这方面很感兴趣。他俩经常玩一个游戏,就是由一个人说出两个物种,另外一个人说出这两个物种同属于什么(如有多个答案,则取最低层次,其他答案都算错)。比如一个人说绵羊、牦牛,另外一个人就要说出它们同属于牛科。注意:虽然这两个物种还同属于偶蹄目、哺乳纲等等,但牛科是最低层次的。
玩了一会儿以后,他们突然发现之前的答案似乎有错,幸好他们手头有一台电脑,虽然不能上网查资料,但可以编程判断对话之间是否有矛盾。由于他们只会"hello world!"以及for循环,因此编程的任务还是交到了你的手里。
输入要求
第1行三个整数N,M,S,分别表示可能出现的生物种数(编号为1~N),可能出现的分类种数(编号为1~M),对话条数。(1<=N,M,S<=150,000)
第2行M个整数l[1]~l[M],l[i]表示编号为i的分类的级别,数值越小则级别越高(比如动物界的级别是1,节肢动物门的级别是2,牛科的级别是5,哥斯达黎加野生纯种河南血统红色打底银色镶边胆小又恐高迷你型三角雷欧奥特曼的级别是2000等等)。(1<=l[i]<=100,000)
接下来有S行,每行描述了一条对话记录,包含了3个整数x,y,a。x,y表示一方所说的两个物种的编号,a表示另一方回答说这两个物种所属类别的编号。(x!=y;1<=x,y<=N;1<=a<=M)
输出要求
如果对话有可能全都正确就输出"maybe right",否则输出"wrong"。
输入样例
4 4 4
100 200 300 300
1 4 1
2 3 2
3 4 3
1 2 4
输出样例
wrong
提示
来源
信息学院第五届程序设计大赛
[ 返回顶端 ] | [ 代码提交 ] | [ 统计数据 ] | [ 历史提交 ]