• <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 歲月流逝 閱讀(214) 評論(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
            韩国无遮挡三级久久| 日本道色综合久久影院| 精品国产乱码久久久久软件| 2020国产成人久久精品| 久久久久人妻精品一区二区三区| 99久久久精品| 女人高潮久久久叫人喷水| 亚洲AV无码一区东京热久久| 97热久久免费频精品99| 久久精品无码一区二区app| 精品国产乱码久久久久软件| 久久国产精品久久| 久久午夜免费视频| 91精品无码久久久久久五月天| 久久婷婷色综合一区二区| 国产99久久久国产精免费| 国内精品人妻无码久久久影院| 美女久久久久久| 国产午夜精品久久久久免费视 | 久久播电影网| 久久影院综合精品| 中文字幕精品无码久久久久久3D日动漫 | 精品综合久久久久久88小说| 麻豆亚洲AV永久无码精品久久| 午夜精品久久久久久| 久久成人国产精品一区二区| 久久线看观看精品香蕉国产| 亚洲AV乱码久久精品蜜桃| 人妻无码精品久久亚瑟影视| 精品无码久久久久久久动漫| 国产精品久久久天天影视香蕉| 国产精品一区二区久久国产| 久久天天躁狠狠躁夜夜躁2O2O | 久久久中文字幕日本| 国产成人久久久精品二区三区 | 精品国际久久久久999波多野| 色88久久久久高潮综合影院| 国产成人精品综合久久久久| 中文国产成人精品久久不卡| 久久无码国产专区精品| 伊人久久大香线焦AV综合影院 |