Fortran Coder

查看: 4131|回复: 4
打印 上一主题 下一主题

[闲聊] 大家觉得SPFA怎么样?

[复制链接]

4

帖子

1

主题

0

精华

入门

F 币
27 元
贡献
31 点

规矩勋章

跳转到指定楼层
楼主
发表于 2014-11-5 16:35:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
忽略段工的长相,只说说SPFA。大家有什么见解?

备选:
a)    踩
b)    穿钉鞋踩

顺手贴段 F 代码 (也请大虾挑错)
[Fortran] 纯文本查看 复制代码
Program Spfa
  Integer Wei(100, 100)
  Integer Way(100)
  Integer Queue(100)
  Logical Visit(100)
  Read *, Nvert, Nedge, Mfrom, Mto
  Do I = 1, Nedge
    Read *, Lposx, Lposy, Lwei
    Wei(Lposx, Lposy) = Lwei
    Wei(Lposy, Lposx) = Lwei
  End Do
  Do I = 1, Nedge
    Way(I) = Huge(I)
    Visit(I) = .False.
  End Do
  Queue(1) = Mfrom
  Visit(Mfrom) = .True.
  Way(Mfrom) = 0
  Jqh = 1
  Jqt = 2
  Do
    If (Jqh==Jqt) Go To 7
    Icurr = Queue(Jqh)
    Jqh = Jqh + 1
    If (Jqh==101) Jqh = 1
    Visit(Icurr) = .False.
    Do I = 1, Nvert
      If (Wei(Icurr,I)>0 .And. Wei(Icurr,I)+Way(Icurr)<Way(I)) Then
        Way(I) = Way(Icurr) + Wei(Icurr, I)
        If (.Not. Visit(I)) Then
          Visit(I) = .True.
          Queue(Jqt) = I
          Jqt = Jqt + 1
          If (Jqt==101) Jqt = 1
        End If
      End If
    End Do
  End Do
7 Print *, Way(Mto)
End



分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩
Mostly Harmless

2022

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1598 元
贡献
689 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

沙发
发表于 2014-11-5 16:45:11 | 只看该作者
程序除了格式之外,没有其他语法错误。

4

帖子

1

主题

0

精华

入门

F 币
27 元
贡献
31 点

规矩勋章

板凳
 楼主| 发表于 2014-11-5 16:50:21 | 只看该作者
fcode 发表于 2014-11-5 16:45
程序除了格式之外,没有其他语法错误。

我自己也觉得很烂,但的确在 fl32 (MS PowerStation) 上编译过了。
Mostly Harmless

2022

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1598 元
贡献
689 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

地板
发表于 2014-11-5 16:51:29 | 只看该作者
我已经帮你改了一下好的风格。

PS:PowerStation建议你放弃使用

4

帖子

1

主题

0

精华

入门

F 币
27 元
贡献
31 点

规矩勋章

5#
 楼主| 发表于 2014-11-5 16:53:23 | 只看该作者
fcode 发表于 2014-11-5 16:51
我已经帮你改了一下好的风格。

PS:PowerStation建议你放弃使用

个人拿着玩的,我主攻 C 。
Mostly Harmless
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-11-25 09:20

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表