码迷,mamicode.com
首页 > 其他好文 > 详细

POJ 1860

时间:2018-10-13 22:44:51      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:add   algorithm   limits   mat   double   mes   argc   ble   man   

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cmath>
 4 #include <cstring>
 5 #include <algorithm>
 6 #include <queue>
 7 #include <stack>
 8 #include <vector>
 9 #include <iomanip>
10 #include <climits>
11 using namespace std;
12 int n,m,s,inq[200],cnt[200];
13 double d[200];
14 double v;
15 struct node{
16     int to;
17     double h,s;
18 };
19 vector<node>e[200];
20 void add(int x,int y,double hui,double sh)
21 {
22     node a;
23     a.to=y;
24     a.h=hui;
25     a.s=sh;
26     e[x].push_back(a);
27 }
28 int spfa()
29 {
30     d[s]=v;inq[s]=1;cnt[s]++;
31     queue<int>q;
32     q.push(s);
33     while(!q.empty())
34     {
35         int now=q.front();q.pop();inq[now]=0;
36         for(int i=0;i<e[now].size();i++)
37         {
38             int t=e[now][i].to;
39             if(d[t]<(d[now]-e[now][i].s)*e[now][i].h)
40             {
41                 d[t]=(d[now]-e[now][i].s)*e[now][i].h;
42                 if(inq[t]==1)
43                 continue;
44                 inq[t]=1;
45                 q.push(t);
46                 cnt[t]++;
47                 if(cnt[t]>n)
48                 return 1;
49             }
50         }
51     }
52     return 0;
53 }
54 int main(int argc, char *argv[])
55 {
56     scanf("%d%d%d%lf",&n,&m,&s,&v);
57     for(int i=0;i<=n;i++)
58     {
59         d[i]=0;
60         inq[i]=0;
61         cnt[i]=0;
62     }
63     for(int i=0;i<m;i++)
64     {
65         int a,b;
66         double c,d,e,f;
67         scanf("%d%d%lf%lf%lf%lf",&a,&b,&c,&d,&e,&f);
68         add(a,b,c,d);
69         add(b,a,e,f);
70     }
71     if(spfa())
72     printf("YES\n");
73     else
74     printf("NO\n");
75     return 0;
76 }

 

POJ 1860

标签:add   algorithm   limits   mat   double   mes   argc   ble   man   

原文地址:https://www.cnblogs.com/huluxin/p/9784324.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!