数据结构编程哈利_第1页
数据结构编程哈利_第2页
数据结构编程哈利_第3页
数据结构编程哈利_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、哈利波特的考试(25)哈利波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成猫。另外,如果想把猫变成鱼,可以通过念一个直接魔咒lalala,也可以将猫变老鼠、老鼠变鱼的魔咒连起来念:hahahehe。现在哈利波特的手里有一本教材,里面列出了所有的变形魔咒和能变的动物。老师允许他自己带一只动物去考场,要考察他把这只动物变成任意一只指定动物的本事。于是他来问你:带什么动物去可以让最难变的那种动物(即该动物变为哈利波特自己带去的动

2、物所需要的魔咒最长)需要的魔咒最短?例如:如果只有猫、鼠、鱼,则显然哈利波特应该带鼠去,因为鼠变成另外两种动物都只需要念4个字符;而如果带猫去,则至少需要念6个字符才能把猫变成鱼;同理,带鱼去也不是最好的选择。输入格式说明:输入说明:输入第1行给出两个正整数n(=100)和m,其中n是考试涉及的动物总数,m是用于直接变形的魔咒条数。为简单起见,我们将动物按1n编号。随后m行,每行给出了3个正整数,分别是两种动物的编号、以及它们之间变形需要的魔咒的长度(=100),数字之间用空格分隔。输出格式说明:输出哈利波特应该带去考场的动物的编号、以及最长的变形魔咒的长度,中间以空格分隔。如果只带1只动物是

3、不可能完成所有变形要求的,则输出0。如果有若干只动物都可以备选,则输出编号最小的那只。样例输入与输出:序号输入输出16 113 4 701 2 15 4 502 6 505 6 601 3 704 6 603 6 805 1 1002 4 605 2 804 7025 45 4 21 2 42 3 41 3 60代码:#include #include int ls105105; int n,m;/1,n void floyd() scanf(%d%d%*c,&n,&m); for(int i=1;i=n;+i) for(int j=1;ji;+j) lsij=lsji=int_max; in

4、t ix;for( ix=0;ixm;+ix) int a,b,c; scanf(%d%d%d%*c,&a,&b,&c); lsab=lsba=c; int kx;for(kx=1;kx=n;+kx) for(int j=1;j=n;+j) for(int i=1;i=n;+i) if(lsikx!=int_max& lskxj!=int_max& lsikx+lskxjlsij) lsij=lsji=lsikx+lskxj; int main() floyd(); int fit,big=int_max; bool bad=false; for(int i=1;i=n;+i) int tmp=int_min; for(int j=1;jtmp) tmp=lsij; if(tmpbig) big=tmp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论