• <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 - 263, comments - 31, trackbacks - 0, articles - 3
               :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理
             1 //PKU 1742 Accepted 1484K 985MS G++ 1424B coin
             2 
             3 //區間動態規劃--可重復幣值的分割
             4 
             5 #include <stdio.h>
             6 #include <stdlib.h>
             7 #include <string.h>
             8 
             9 const int size = 100100 ;
            10 
            11 struct COIN
            12 {
            13     int val ;
            14     int num ;
            15 };
            16 struct COIN coin[110] ;
            17 
            18 struct NODE
            19 {
            20     int cval ;//當前值是的最后一個組成硬幣是多少
            21     int cnum ;//該硬幣已經用了多少個
            22 };
            23 struct NODE node[size] ;
            24 
            25 int flag[size] ;//記錄硬幣是否已經找過
            26 
            27 int inn, ink ;
            28 
            29 void input() 
            30 {
            31     forint i=1; i<=inn; i++ ) scanf( "%d"&coin[i].val ) ;
            32 
            33     forint i=1; i<=inn; i++ ) scanf( "%d"&coin[i].num ) ;
            34 }
            35 
            36 void process()
            37 {
            38     forint i=0; i<size; i++ )
            39     {
            40         node[i].cnum = node[i].cval = flag[i] = 0 ;
            41     }
            42 
            43     flag[0= 1 ;
            44 
            45     int max = 0 ; int sum = 0 ; int temp ;
            46     forint i=1; i<=inn; i++ )
            47     {//
            48         max += coin[i].val * coin[i].num ;
            49         if( max > ink )    max = ink ;
            50 
            51         forint c=coin[i].val; c<=max; c++ )
            52         {
            53             if( flag[c] )    continue ;
            54 
            55             temp = c - coin[i].val ;//temp為當前c的前驅
            56             if( flag[temp] )
            57             {
            58                 if( node[temp].cval == coin[i].val )
            59                 {
            60                     if( node[temp].cnum < coin[i].num )
            61                     {
            62                         flag[c] = 1 ; sum++ ; node[c].cval = coin[i].val ; node[c].cnum = node[temp].cnum+1 ;
            63                     }
            64                 }
            65                 else
            66                 {
            67                     flag[c] = 1 ; sum++ ; node[c].cval = coin[i].val ; node[c].cnum = 1 ;
            68                 }
            69             }
            70         }
            71     }
            72 
            73     printf( "%d\n", sum ) ;
            74 }
            75 
            76 int main()
            77 {
            78     //freopen( "in.txt", "r", stdin ) ;
            79 
            80     while( scanf( "%d %d"&inn, &ink ) != EOF && (inn||ink) )
            81     {
            82         input() ;
            83 
            84         process() ;
            85 
            86         //output() ;
            87     }
            88 
            89     return 0 ;
            90 }
            亚洲精品高清久久| 日韩久久久久中文字幕人妻| 久久人人爽爽爽人久久久| 久久久久亚洲Av无码专| 国产精品免费看久久久| 国产亚洲成人久久| 亚洲AV无码久久精品蜜桃| 精品精品国产自在久久高清| 亚洲乱码日产精品a级毛片久久| 亚洲精品无码久久久久sm| 国内精品伊人久久久久影院对白| 久久久久久久久久久久久久| 韩国无遮挡三级久久| 亚洲精品乱码久久久久66| 精品国产91久久久久久久a| 久久夜色精品国产噜噜麻豆| 一本久久a久久精品亚洲| 国产精品99久久不卡| 久久综合噜噜激激的五月天| 日韩中文久久| 久久婷婷五月综合97色直播| 精品久久久久久国产91| 久久综合国产乱子伦精品免费| 亚洲欧美精品一区久久中文字幕| 久久青草国产手机看片福利盒子 | 九九久久精品无码专区| 久久精品久久久久观看99水蜜桃| 久久www免费人成看国产片| 久久久久久免费一区二区三区| 亚洲人成网亚洲欧洲无码久久| 久久香蕉国产线看观看猫咪?v| 亚洲国产精品热久久| 久久美女人爽女人爽| 久久久精品午夜免费不卡| 国产精品久久一区二区三区| 久久久精品人妻一区二区三区蜜桃| 久久国语露脸国产精品电影| 久久夜色精品国产噜噜亚洲a | 久久精品aⅴ无码中文字字幕不卡| 天堂无码久久综合东京热| 久久人人爽人爽人人爽av|