回 帖 发 新 帖 刷新版面

主题:加分二选一,不容错过!!!

Problem Aug.20

Problem A
飞路网(fire)
哈利波特五年级的暑假来临了,由于神秘人的归来,哈利在麻瓜社会的安全必须得到保证,而且,哈利的姨父姨母也必须有人时常去“提醒”一下,另外,罗恩与赫敏也希望能经常去拜访哈利,以使哈利在经历了这么多险境后,能有一个相对快乐些的暑假。
所以,凤凰社必须为此找到一个更加安全保密而且方便的交通方式。要在魔法世界与麻瓜世界间建立安全的通道,最好的方式当然还是飞路网(壁炉交通网),但由于这个飞路网是要连接魔法世界的壁炉与麻瓜世界的壁炉,而且要更安全,防止被麻瓜发现和被食死徒破坏,邓不利多责成魔法部魔法交通司(DT)设计一种新的飞路网。经过研究,新的网络设计原理出炉,但一个很棘手的问题也扑面而来,就是这种新飞路网的造价很高,而魔法部长福吉又是一个非常小气的人,不会拨很多款,故魔法交通司司长需要找一种比较经济的联网方式,使所有的壁炉都被连接。网络的造价与壁炉之间的魔法距离成正比。其关系是,一个单位的魔法距离需要的花费是7个克拉币,魔法世界货币的换算方法简单极了,29个克拉币等于一个镰刀币,17个镰刀币等于一个帆船币。(克拉币单位为kl,镰刀币单位为rh,帆船币单位为jalor);
但是壁炉太多了,而且有的壁炉之间可直接连接,有的则不能,而魔法交通司的成员工作方式比较古老,无法在邓不利多所要求的时间内完成连接。热心的麻瓜迷阿瑟韦斯莱先生主动帮助他们,他提出让可靠的麻瓜使用麻瓜世界最强劲的工具————计算机来完成这个工作。
你就是那个被韦斯莱先生选定的可靠的麻瓜,你的任务是编程帮助他们。
输入(fire.in):
    第一行包含两个整数N,M。N表示壁炉总数(1≤N≤100),M表示所有能直接连接的壁炉之间的魔法距离(1<=M<=N*(N-1)/2)。
以下M行,每行三个正整数,第一个数和第二个数为壁炉编号,第三个为这两个壁炉间的魔法距离L(0<=L<=10000)。

输出(fire.out):
    若干带单位(kl,rh或jalor)的正整数,由于是要向吝啬鬼福吉部长申请的所以数字要尽可能小,单位复杂一点无妨(即把单位(kl,rh,jalor)转换得尽可能大,能用大单位表示尽量用大单位)数与单位间无空格。

Sample Input
4 6              Sample output
1 2 4                
1 3 9                    6rh22kl
1 4 21
2 3 8
2 4 17
3 4 16    
请教一下[b]具体[/b]的程序,若做不出可以考虑单位转换:如上面输出的6rh22kl可转换为196kl,请问这一数字怎样转换成复杂的单位???
我需要的是[b]具体[/b]的程序!!!!



[img]http://sports.sohu.com/upload/wallpapers/shaq_yao1024x768.jpg[/img]

回复列表 (共6个回复)

沙发

题目这么长!这么复杂!我也帮不了你了……

板凳

看仔细了!还有小半道题!!!!

3 楼

快活呢!!!

4 楼

应该是这样吧:
最短路径+可变进制转换

5 楼

第二个小问题
program xj(input,output);
var
a,jalor,rh,kl:integer;
begin
writeln('jalor');
readln(jalor);
writeln('rh');
readln(rh);
writeln('kl');
readln(kl);
a:=(jalor*17+rh)*29+kl;
writeln(a);
end.
题目太长了,读起来都累死

6 楼

第二题我给你解了哦。
program xj(input,output);
  var
   a,jalor,rh,kl:integer;
    begin
      writeln('jalor');
      readln(jalor);
      writeln('rh');
      readln(rh);
      writeln('kl');
      readln(kl);
      a:=(jalor*17+rh)*29+kl;
      writeln(a);
end.
试试怎么样。

我来回复

您尚未登录,请登录后再回复。点此登录或注册