• <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 - 43,  comments - 9,  trackbacks - 0
            250p TheMoviesLevelOneDivOne
            電影院有n行m列的座位, 有一些已經被預訂了. 求在剩下的座位中, 選出同行且相鄰的兩個座位的方案數.
            可以按行列將已預訂的座位排序, 然后順便掃一遍, 算出相鄰兩個被預訂座位之間的方案數. 最后累加.
            也可以用個set記錄不能使用的方案, 再用沒有預訂座位的情況下的總方案數減去之.

            500p TheMoviesLevelTwoDivOne
            若干部電影, 每部電影有一個加血的時間點. 人看電影, 每看一分鐘掉一點血. 血掉到0就結束. 問怎樣按排順序使看的電影部數最多. 如果總部數相同, 取字典序最小的解輸出.
            只有20部電影, 狀態DP即可.
            為保證字典序, 可以從后往前DP, 這樣每次轉移時新加入的電影都是當前最先看的, 保證它先擇的是最小的, 即能保證字典序最小.

            [DP]

            1000p TheMoviesLevelThreeDivOne
            若干部電影, A和B兩人看每部電影的時間分別是A[i], B[i]. 初始安排, 要依次把第1,2,..,n部電影放入A或B的待看隊列的隊尾. A和B各自開始看自己隊列中的電影, 看完一部后, 如果這是另一個人沒看過的, 就加入它的隊列中. 如果期間某人列隊空了, 那么他就結束, 再也不看新電影了. 問有多少種初始安排方法, 能使A和B都能看完所有電影.
            首先肯定不會出現一種安排使得A和B都卡. 因為A卡肯定發生在A看完他所有的電影之后, 且此時B沒看完自己的, 所以B肯定不會卡.
            這樣就可以用總方案數2^N分別減去A卡的和B卡的方案數. 考慮A卡的情況. 假設A那一整坨東西的時長是sumA, B的第一個東西是tb1, 則A卡的條件是 sumA-tb1<0. 否則B看完tb1后把ta1加在sumA后面, 這時卡的條件是(sumA+ta1)-(tb1+tb2)<0. 依此, 如果在這過程中任意一次卡的條件符合, 那么后續怎么安排都是卡的. 于是用一維狀態記錄目前為止出現過的最小的X-Y, min, 還要一維記錄當前的X-Y, cur, 以轉移用. 轉移時, 如果把當前電影放進A, 那么min和cur都增加A[i], 因為sumA增加了. 如果放進B, 那么用cur和B[i]來計算新的cur和min.
            hint. cur=當前所有電影的A[i]的和-B中電影的B[i]的和, 新的min=除了新放的電影外所有放過的電影的A[i]的和-包括新電影在內的B中電影的B[i]的和.

            ps. 1000的DP都很YD啊...

            [DP]
            posted on 2010-05-29 14:40 wolf5x 閱讀(295) 評論(0)  編輯 收藏 引用 所屬分類: topcoder
            <2010年5月>
            2526272829301
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            "Do not spend all your time on training or studying - this way you will probably become very exhausted and unwilling to compete more. Whatever you do - have fun. Once you find programming is no fun anymore – drop it. Play soccer, find a girlfriend, study something not related to programming, just live a life - programming contests are only programming contests, and nothing more. Don't let them become your life - for your life is much more interesting and colorful." -- Petr

            留言簿(3)

            隨筆分類(59)

            隨筆檔案(43)

            cows

            搜索

            •  

            最新評論

            評論排行榜

            欧美久久综合性欧美| 久久久国产精品网站| 久久国产精品成人片免费| 岛国搬运www久久| 亚洲精品午夜国产VA久久成人| 久久久久国产日韩精品网站| 久久成人国产精品一区二区| 久久综合综合久久97色| 久久久亚洲欧洲日产国码aⅴ| 亚洲中文字幕无码久久2017| 色综合久久久久久久久五月| 久久久久99精品成人片欧美| 情人伊人久久综合亚洲| 午夜精品久久久内射近拍高清| 四虎国产精品成人免费久久| 日韩精品久久久久久久电影| 亚洲AV无一区二区三区久久| 日本欧美国产精品第一页久久| 久久99热精品| 国产亚洲精午夜久久久久久 | 久久久久久毛片免费看| 久久精品一区二区| 狠狠人妻久久久久久综合蜜桃| 91精品婷婷国产综合久久| 99久久人妻无码精品系列| 色综合久久久久综合99| 香蕉aa三级久久毛片| 韩国免费A级毛片久久| 久久久久一区二区三区| 久久久久久无码国产精品中文字幕| 无夜精品久久久久久| 久久国产欧美日韩精品| 亚洲精品美女久久久久99小说| 人妻无码久久一区二区三区免费| 亚洲国产成人久久综合一| 亚洲欧美国产日韩综合久久| 99国产欧美久久久精品蜜芽 | 91精品国产91久久久久久青草 | 国产精品久久久久久久久| 久久精品国产亚洲AV高清热| 精品人妻久久久久久888|