• <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 歲月流逝 閱讀(222) 評論(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
            91精品国产高清久久久久久国产嫩草| 久久发布国产伦子伦精品| 久久久精品波多野结衣| 青青草原综合久久大伊人| 麻豆AV一区二区三区久久| 精品久久久久久无码国产| 日韩欧美亚洲综合久久| 91精品婷婷国产综合久久| 亚洲AV日韩精品久久久久久 | 国内精品免费久久影院| av色综合久久天堂av色综合在| 久久综合久久综合久久| 亚洲精品国产字幕久久不卡| 九九久久精品国产| 丁香五月网久久综合| 91麻豆国产精品91久久久| 一本久久久久久久| 久久综合久久自在自线精品自| 久久久久这里只有精品| 四虎国产精品免费久久5151| 亚洲精品无码久久久影院相关影片| 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲 | 精品视频久久久久| 久久亚洲国产午夜精品理论片| 精品久久久中文字幕人妻| 久久免费视频6| 久久精品无码一区二区三区免费| 久久er国产精品免费观看2| 久久99精品久久久久婷婷| 三上悠亚久久精品| 国产色综合久久无码有码| 狠狠色狠狠色综合久久| 久久久国产打桩机| 伊人久久综合成人网| 一本久久a久久精品vr综合| 亚洲精品蜜桃久久久久久| 亚洲国产精品无码久久久不卡 | 久久精品国产亚洲av麻豆色欲| 久久精品国产亚洲AV忘忧草18| 狠狠色丁香久久婷婷综合蜜芽五月 | 久久国产精品一区二区|