• <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>

            superman

            聚精會(huì)神搞建設(shè) 一心一意謀發(fā)展
            posts - 190, comments - 17, trackbacks - 0, articles - 0
               :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            ZOJ 1013 - Great Equipment

            Posted on 2008-03-22 15:53 superman 閱讀(457) 評論(0)  編輯 收藏 引用 所屬分類: ZOJ
             1 /* Accepted 1013 C++ 00:03.25 2804K */
             2 #include <stdio.h>
             3 #include <string.h>
             4 #include <iostream>
             5 
             6 using namespace std;
             7 
             8 int n;
             9 int w1, s1, d1;
            10 int w2, s2, d2;
            11 int w3, s3, d3;
            12 int c1, c2, c3, d4;
            13 int opt[2][501][501];
            14 struct { int w, s; } caravan[101];
            15 
            16 int put(int k, int i, int j)
            17 {
            18     int w = (caravan[k].w - i * w1 - j * w2) / w3;
            19     int s = (caravan[k].s - i * s1 - j * s2) / s3;
            20     if(w <= 0 || s <= 0return 0;
            21     return (w < s ? w : s);
            22 }
            23 
            24 int main()
            25 {
            26     int cs = 0;
            27     while(cin >> n)
            28     {
            29         if(n == 0)
            30             break;
            31         cin >> w1 >> s1 >> d1;
            32         cin >> w2 >> s2 >> d2;
            33         cin >> w3 >> s3 >> d3;
            34         cin >> c1 >> c2 >> c3 >> d4;
            35         for(int i = 1; i <= n; i++)
            36             cin >> caravan[i].w >> caravan[i].s;
            37         
            38         memset(opt, 0sizeof(opt));
            39         
            40         opt[0][0][0= 0;
            41         int mx = 0, my = 0;
            42         for(int k = 1; k <= n; k++)
            43         {
            44             memset(opt[1], 0XFFsizeof(opt[1]));
            45             int mmx = mx, mmy = my;
            46             for(int i = 0; i <= mx; i++)
            47             for(int j = 0; j <= my; j++)
            48             {
            49                 if(opt[0][i][j] == -1)
            50                     continue;
            51                 for(int p = 0; p * w1 <= caravan[k].w && p * s1 <= caravan[k].s; p++)
            52                 for(int q = 0; p * w1 + q * w2 <= caravan[k].w && p * s1 + q * s2 <= caravan[k].s; q++)
            53                 {
            54                     opt[1][i + p][j + q] >?= (opt[0][i][j] + put(k, p, q));
            55                     mmx >?= i + p;
            56                     mmy >?= j + q;
            57                 }
            58             }
            59             mx = mmx;
            60             my = mmy;
            61             memcpy(opt[0], opt[1], sizeof(opt[1]));
            62         }
            63         int max = 0;
            64         for(int i = 0; i <= mx; i++)
            65         for(int j = 0; j <= my; j++)
            66         if(opt[0][i][j] >= 0)
            67         {
            68             if(d4 > c1 * d1 + c2 * d2 + c3 * d3)
            69             {
            70                 int t1 = i, t2 = j, t3 = opt[0][i][j], cur = 0;
            71                 while(t1 - c1 >= 0 && t2 - c2 >= 0 && t3 - c3 >= 0)
            72                 {
            73                     t1 -= c1;
            74                     t2 -= c2;
            75                     t3 -= c3;
            76                     cur += d4;
            77                 }
            78                 cur += (t1 * d1 + t2 * d2 + t3 * d3);
            79                 max >?= cur;
            80             }
            81             else
            82                 max >?= (i * d1 + j * d2 + opt[0][i][j] * d3);
            83         }
            84         if(cs++)
            85             cout << endl;
            86         cout << "Case " << cs << ':' << ' ' << max << endl;
            87     }
            88     return 0;
            89 }
            90 
            久久久久久久精品妇女99| 99久久综合狠狠综合久久| 亚洲天堂久久精品| 久久午夜羞羞影院免费观看| 深夜久久AAAAA级毛片免费看| 国产精品视频久久| 久久亚洲私人国产精品| 日本五月天婷久久网站| 狠狠综合久久综合88亚洲| 亚洲中文字幕伊人久久无码 | 99久久国产热无码精品免费久久久久 | 91精品国产91久久久久久| 久久精品免费观看| 99精品久久久久久久婷婷| 久久99久久无码毛片一区二区 | 2020最新久久久视精品爱| 99久久综合狠狠综合久久| 久久天天躁狠狠躁夜夜av浪潮| 久久久WWW成人| 欧美国产成人久久精品| 无码国产69精品久久久久网站| 国产精品久久久久国产A级| 久久精品国产亚洲麻豆| 久久久久久毛片免费看| 久久精品国产亚洲AV香蕉| 国产精品久久永久免费| 久久九九久精品国产免费直播| 精品久久久久久久国产潘金莲| 婷婷伊人久久大香线蕉AV| 狠狠色丁香久久综合五月| 久久久无码精品亚洲日韩软件| 中文精品久久久久人妻不卡| 99精品国产在热久久| 久久人人爽人人爽AV片| 热re99久久精品国99热| 国产高清国内精品福利99久久| 91麻豆国产精品91久久久| 色综合久久综精品| 亚洲va国产va天堂va久久| 久久成人18免费网站| 久久66热人妻偷产精品9|