• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 7, comments - 13, trackbacks - 0, articles - 37
               :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理

            [導入]PKU-1860

            Posted on 2008-10-16 15:15 歲月流逝 閱讀(216) 評論(0)  編輯 收藏 引用
            題意 : 就是套匯的問題,匯率Rab, 增加了一個手續費  Cab 。。。。。。。每次的結果是  (本金 - 手續費) * 匯率,而且一個人擁有的錢的類型是已知的,擁有的value 錢的個數也是已知的, 問你能不能增值。
            輸入 :
            3 2 1 20.0                         //錢種類個數  匯率的個數,擁有第幾種錢, 擁有多少錢1 2 1.00 1.00 1.00 1.00            //錢a, 錢b, rab, cab, rba, cba2 3 1.10 1.00 1.10 1.00
            算法:判斷有無正環,采用bellman的最大路的松弛法去做.PS:要注意兩個條件的跳出:1.有正環會不停的松弛,只要>val后叫結束循環.2.一旦不能循環了就結束循環,這是返回dist[s]>val就可以了

            #include<stdio.h>
            #include<memory.h>
            struct node
            {
              int u,v;
              double r,c;
            };
            int n,m,s;
            double val;
            node edge[1001];
            int eg;
            #define eps 1e-8
            bool bellman()
            {
              double dist[102];
              memset(dist,0,sizeof(dist));
              int i;
              int flag = 0;
              dist[s] = val;
              while(dist[s]<=val+eps)
              {
                flag  = 0;
                for(i = 0;i<=eg;i++)
                {
                  if(dist[edge[i].v]+eps<(dist[edge[i].u]-edge[i].c)*edge[i].r)
                  {
                    dist[edge[i].v] = (dist[edge[i].u]-edge[i].c)*edge[i].r;
                    flag=1;
                  }
                }
                if(!flag)
                  return dist[s]>val;
              }
              return true;
            }
            int main()
            {
              int i;
              int a,b;
              double rab, cab, rba ,cba;
              while(scanf("%d %d %d %lf",&n,&m,&s,&val)!=EOF)
              {
                eg  = 0;
                for(i = 0;i<m;i++)
                {
                  scanf("%d %d %lf %lf %lf %lf",&a,&b,&rab,&cab,&rba,&cba);
                  edge[eg].u = a;
                  edge[eg].v = b;
                  edge[eg].r = rab;
                  edge[eg].c = cab;
                  eg++;
                  edge[eg].u = b;
                  edge[eg].v = a;
                  edge[eg].r = rba;
                  edge[eg].c = cba;
                  eg++;
                }
                if(bellman())
                {
                  printf("YES\n");
                }
                else
                {
                  printf("NO\n");
                }
              }
              return 0;
            }

            Tags - , ,
            文章來源:http://www.feng5166.com/blog/read.php?125
            香蕉久久av一区二区三区| 久久毛片一区二区| 亚洲精品乱码久久久久久按摩| 久久99精品免费一区二区| 久久久久一级精品亚洲国产成人综合AV区 | 久久久久久国产a免费观看黄色大片 | 国产精品VIDEOSSEX久久发布 | 无码人妻精品一区二区三区久久 | 久久er99热精品一区二区| 精品999久久久久久中文字幕| 久久中文精品无码中文字幕 | 91精品婷婷国产综合久久| 久久久久婷婷| 久久久久99精品成人片直播| 精品一久久香蕉国产线看播放| 亚洲午夜久久久久妓女影院 | 亚洲国产另类久久久精品黑人| 国产精品美女久久久| 狠狠色综合网站久久久久久久高清| 青青草国产精品久久久久| 久久精品一区二区三区AV| 91精品日韩人妻无码久久不卡| 武侠古典久久婷婷狼人伊人| 久久99国产精品久久99| av色综合久久天堂av色综合在| 18岁日韩内射颜射午夜久久成人| 伊人久久大香线蕉综合Av| 久久一区二区三区免费| 国产精品天天影视久久综合网| 久久中文字幕精品| 久久亚洲天堂| 性欧美大战久久久久久久| 久久精品人妻一区二区三区| 久久亚洲春色中文字幕久久久| 久久久久久国产精品无码下载| 久久国产精品免费| 亚洲一区中文字幕久久| 91精品日韩人妻无码久久不卡 | 欧美精品丝袜久久久中文字幕| 久久久久国色AV免费观看| 国产精品久久久久久久久久免费|