• <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
            久久国产香蕉一区精品| 四虎国产精品免费久久| 久久天天躁狠狠躁夜夜躁2O2O| 奇米影视7777久久精品人人爽| 亚洲婷婷国产精品电影人久久| 久久人人爽人人爽人人片AV东京热 | .精品久久久麻豆国产精品| 久久久老熟女一区二区三区| 久久精品国产亚洲7777| 日韩久久久久久中文人妻| 久久精品国产99国产精品| 中文无码久久精品| 国产香蕉97碰碰久久人人| 伊人精品久久久久7777| 国产精品99久久精品| 久久中文字幕精品| Xx性欧美肥妇精品久久久久久| 久久精品桃花综合| 国产精品女同一区二区久久| 国内精品久久久久影院薰衣草 | 97精品国产97久久久久久免费 | 久久亚洲国产精品成人AV秋霞| 国产精品久久99| 精品久久亚洲中文无码| 亚洲人成无码久久电影网站| 久久精品男人影院| 婷婷综合久久中文字幕蜜桃三电影| 久久国产香蕉一区精品| 香蕉久久一区二区不卡无毒影院 | 99精品久久精品一区二区| 色播久久人人爽人人爽人人片AV| 国产亚洲色婷婷久久99精品91| 国产精品国色综合久久| 久久精品亚洲精品国产色婷| 伊人久久大香线蕉亚洲| 久久亚洲熟女cc98cm| 伊人久久大香线蕉AV一区二区| 久久最新免费视频| 中文成人无码精品久久久不卡 | 久久午夜无码鲁丝片| 亚洲精品乱码久久久久久按摩|