设为首页 收藏本站
查看: 823|回复: 0

[经验分享] poj

[复制链接]

尚未签到

发表于 2015-9-12 08:04:40 | 显示全部楼层 |阅读模式
  最短路问题,用Bellman算法判断有无正向环。



1 #include <stdio.h>
2 double M[105],orig;
3 int m,n,s;
4 typedef struct
5 {
6     int u,v;
7     double r,c;
8     void init(int a,int b,double q,double p)
9     {u = a; v = b; r = q; c = p;}
10 }Edge;
11 Edge ed[205];
12 void read_graph()
13 {
14     int a,b,i;
15     double q,w,e,r;
16     for(i = 1; i <= n; i++)
17         M = 0.0;
18     for(i = 0; i < m; i++)
19     {
20         scanf("%d%d%lf%lf%lf%lf",&a,&b,&q,&w,&e,&r);
21         ed[i<<1].init(a,b,q,w);
22         ed[i<<1|1].init(b,a,e,r);
23     }
24 }
25 bool Bellman()
26 {
27     int i,j,u,v;
28     double r,c;
29     bool ok;
30     M = orig;
31     for(j = 1; j < n; j++)
32     {
33         ok = 1;
34         for(i = 0; i < 2*m; i++)
35         {
36             u = ed.u; v = ed.v;
37             r = ed.r; c = ed.c;
38             if((M-c)*r > M[v])
39             {M[v] = (M-c)*r; ok = 0;}
40         }
41         if(ok) break;
42     }
43     for(i = 0; i < 2*m; i++)
44     {
45         u = ed.u; v = ed.v;
46         r = ed.r; c = ed.c;
47         if((M-c)*r > M[v])
48             return 1;
49     }
50     return 0;
51 }
52 int main()
53 {
54     while(~scanf("%d%d%d%lf",&n,&m,&s,&orig))
55     {
56         read_graph();
57         if(Bellman())
58             printf("YES\n");
59         else printf("NO\n");
60     }
61     return 0;
62 }
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-112463-1-1.html 上篇帖子: POJ 下篇帖子: UVa 10763
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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