青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Fly me to the moon

the beauty of C++

動(dòng)態(tài)規(guī)劃解拋雞蛋(玻璃球)問題

    昨天早上看了題經(jīng)典老題,拋玻璃球,也有的版本是拋雞蛋,可惜昨天早上愣是沒做出來,下午忙別的事去了,到了晚上看了ChinaUnix上的一篇討論帖才知道如何解,事實(shí)上我一開始對(duì)題目的理解就錯(cuò)了,于是根本沒有想到用DP。今天總算有時(shí)間整理一下思路,并把代碼實(shí)現(xiàn)出來了。
    題目是這樣的:一個(gè)100層的大廈,你手中有兩個(gè)相同的玻璃球。從這個(gè)大廈的某一層扔下圍棋
子就會(huì)碎,用你手中的這兩個(gè)玻璃圍棋子,找出一個(gè)最優(yōu)的策略,來得知那個(gè)臨界層面。
    這里的最優(yōu)策略指的是在這種策略下無論哪個(gè)臨界層面在第幾層,測(cè)試的次數(shù)最少。我一開始就是把題意理解錯(cuò)了,給了一個(gè)非最優(yōu)解,后來看了CU那的討論后才明白了是用動(dòng)態(tài)規(guī)劃來做,并可以把題目擴(kuò)展為n層大廈用k個(gè)玻璃球來測(cè)試。
    設(shè)F(n,k)為用k個(gè)玻璃球來測(cè)試n層大廈的臨界層的最少次數(shù),狀態(tài)轉(zhuǎn)移方程如下:
    F(n,k)=min{max{F(r,k-1), F(n-r,k)}+1, 1<=r<=n}
    邊界條件:F(n,1)=n-1, F(1,k)=F(0,k)=0
    狀態(tài)轉(zhuǎn)移方程可以這樣來考慮,假設(shè)在n層樓中的第r層拋一次(對(duì)應(yīng)方程中的"+1"),會(huì)有兩種情況發(fā)生:
    (1)玻璃球碎,說明在第1到第r層樓中必有一層為臨界層,問題轉(zhuǎn)化為一個(gè)子問題:求F(r,k-1)
    (2)玻璃球不碎,說明臨界層在第r+1層到第n層這n-r層樓中,問題轉(zhuǎn)化為子問題:求F(n-r,k)
    因?yàn)榭紤]的是最壞情況下拋球策略的所需測(cè)試次數(shù)的最小值,所以取這兩種情況中的較大值,并遍歷每一個(gè)可能的r,取其最小值即得到F(n,k)。
    實(shí)現(xiàn)代碼如下:
 1 #include <iostream>
 2 #include <fstream>
 3 #include <sstream>
 4 #include <string>
 5 #include <cmath>
 6 #include <iomanip>
 7 #include <vector>
 8 #include <deque>
 9 #include <list>
10 #include <queue>
11 #include <stack>
12 #include <map>
13 #include <algorithm>
14 #include <limits>
15 #include <utility>
16 #include <ctime>
17 #include <bitset>
18 using namespace std;
19 
20 #define MAX_FLOOR 512
21 #define MAX_BALL  100
22 
23 int dp(int n, int k)
24 {
25     if(k<1 || n<1return -1;    //錯(cuò)誤輸入
26 
27     if(k==1return n-1;        //去掉一些trivial case
28     if(n==1return 0;
29 
30     int M[MAX_BALL][MAX_FLOOR];
31     int i,j,r;
32     int temp, min;
33 
34     for(i=0;i<=k;i++) M[i][0]=M[i][1]=0;    //F(1,k)=F(0,k)=0
35     for(j=2;j<=n;j++) M[1][j]=j-1;            //F(n,1)=n-1
36 
37     /*
38     狀態(tài)轉(zhuǎn)移方程:
39     F(n,k)=min{max{F(r,k-1)+1, F(n-r,k)+1}, 1<=r<=n}
40     */
41     for(i=2;i<=k;i++)
42         for(j=2;j<=n;j++)
43         {
44             min = numeric_limits<int>::max();
45             for(r=1;r<=j;r++)
46             {
47                 temp = max(M[i-1][r], M[i][j-r])+1;
48                 if(temp<min)
49                     min = temp;
50             }
51             M[i][j] = min;
52         }
53 
54     return M[k][n];//F(n,k)
55 }
56 
57 int main()
58 {
59     int n,k;
60     
61     cin>>n>>k;
62     cout<<dp(n, k)<<endl;
63     
64     return 0;
65 }

input: 100 2  output: 14
input: 300 3  output: 13

posted on 2009-09-18 14:31 翼帆 閱讀(2760) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 算法

導(dǎo)航

<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

統(tǒng)計(jì)

常用鏈接

留言簿

隨筆分類

隨筆檔案

搜索

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲国产欧美日韩精品| 在线欧美日韩精品| 亚洲欧美日韩精品久久奇米色影视| 亚洲国产精品小视频| 欧美成va人片在线观看| 欧美第一黄色网| 亚洲伦理网站| 欧美一区日本一区韩国一区| 久久久久久久999精品视频| 麻豆精品国产91久久久久久| 欧美久久久久| 国产日韩欧美一区二区三区四区| 悠悠资源网久久精品| 日韩视频在线免费观看| 欧美一级片在线播放| 玖玖在线精品| 一本色道久久99精品综合 | 91久久久久久久久| 一区二区三区欧美亚洲| 欧美一区二区视频97| 欧美成人综合网站| 亚洲视频碰碰| 久久一区二区三区四区| 国产精品99免视看9| 在线观看欧美精品| 亚洲国产激情| 亚洲日本欧美| 欧美一区二区三区免费在线看 | 久久国产日韩| 亚洲精品欧美精品| 久久久久久91香蕉国产| 欧美性大战久久久久| 亚洲国产中文字幕在线观看| 欧美一区二区三区电影在线观看 | 香蕉久久夜色| 国产精品r级在线| 亚洲激情电影在线| 久久综合狠狠| 欧美伊人久久久久久久久影院| 欧美国产日韩一区| 在线精品国产欧美| 久久先锋资源| 欧美在线视频全部完| 国产精品久久久久久久7电影 | 国产精品一区二区欧美| 一区二区欧美日韩视频| 亚洲电影自拍| 老司机精品导航| 揄拍成人国产精品视频| 久久精品国内一区二区三区| 亚洲性夜色噜噜噜7777| 国产精品福利片| 亚洲欧美成人在线| 亚洲视频一起| 国产农村妇女毛片精品久久莱园子 | 欧美午夜电影一区| 一本一本久久a久久精品牛牛影视| 久久网站热最新地址| 欧美一级淫片播放口| 国产日韩专区| 久久亚洲春色中文字幕久久久| 午夜影院日韩| 精品99一区二区| 欧美电影电视剧在线观看| 噜噜噜在线观看免费视频日韩| 在线精品亚洲| 亚洲国产毛片完整版| 欧美日韩国产123区| 亚洲一区在线免费| 亚洲欧美高清| 激情久久一区| 亚洲国产女人aaa毛片在线| 欧美日韩第一区| 亚洲一区在线免费| 亚洲欧美综合v| 精品9999| 欧美亚洲视频在线观看| 黄色成人在线免费| 欧美ed2k| 欧美久久一级| 性伦欧美刺激片在线观看| 欧美一级视频精品观看| 亚洲成人在线视频播放| 亚洲精品久久久久久久久久久| 国产精品magnet| 久久日韩粉嫩一区二区三区| 免费观看久久久4p| 国产精品99久久久久久有的能看| 亚洲综合不卡| 亚洲精品乱码久久久久久| 亚洲天堂视频在线观看| 伊人婷婷欧美激情| 亚洲视频网在线直播| 亚洲国产91精品在线观看| 一本久久a久久精品亚洲| 国产在线视频欧美一区二区三区| 亚洲国产福利在线| 国产九九视频一区二区三区| 欧美黄色大片网站| 国产亚洲精品福利| 亚洲另类一区二区| 亚洲第一精品夜夜躁人人爽 | 国产一区久久| 日韩一级二级三级| 在线观看日韩av先锋影音电影院| 亚洲三级视频在线观看| 国产午夜亚洲精品不卡| 亚洲精品一区二区三区四区高清| 国内不卡一区二区三区| 亚洲色图自拍| 一级日韩一区在线观看| 久久久xxx| 久久久av毛片精品| 国产精品乱码人人做人人爱| 亚洲高清不卡| 亚洲国产成人不卡| 欧美伊人久久久久久午夜久久久久| 一本色道久久综合精品竹菊 | 亚洲第一天堂无码专区| 国产综合网站| 亚洲欧美日韩天堂| 亚洲尤物视频网| 欧美久久久久久久| 亚洲国产日韩欧美综合久久| 国内成人自拍视频| 欧美伊人久久大香线蕉综合69| 亚洲综合久久久久| 欧美日韩一区二区三区在线观看免 | 亚洲九九九在线观看| 欧美1级日本1级| 欧美刺激午夜性久久久久久久| 国产专区欧美精品| 欧美在线日韩在线| 久久综合五月| 在线看国产一区| 亚洲影视综合| 亚洲天堂网在线观看| 99re6热在线精品视频播放速度| 麻豆精品91| 亚洲福利视频免费观看| 日韩视频中文字幕| 欧美另类一区二区三区| 亚洲精品1234| 一区二区日韩| 国产精品护士白丝一区av| 亚洲性图久久| 久久久亚洲精品一区二区三区| 在线播放视频一区| 欧美韩日一区| 亚洲一区尤物| 欧美 日韩 国产在线| 亚洲精品麻豆| 欧美视频一区| 欧美夜福利tv在线| 免费不卡在线视频| 日韩图片一区| 国产精品一区二区三区久久| 久久精品女人天堂| 亚洲国产欧美另类丝袜| 午夜日韩视频| 亚洲国产精品尤物yw在线观看| 欧美激情第9页| 性18欧美另类| 亚洲电影av在线| 性一交一乱一区二区洋洋av| 精品二区视频| 欧美女同视频| 欧美一区二区性| 亚洲国产精品一区二区第一页| 亚洲午夜精品福利| 韩日成人av| 欧美视频精品在线观看| 久久超碰97人人做人人爱| 91久久国产自产拍夜夜嗨| 欧美一二三区在线观看| 亚洲精品久久久一区二区三区| 国产精品视频xxx| 欧美韩日一区二区| 欧美在线播放| 一区二区三区色| 亚洲电影免费在线观看| 久久久99国产精品免费| 在线一区二区三区四区| 在线看片欧美| 国产欧美日韩另类一区| 欧美日韩午夜剧场| 久久久久久久高潮| 亚洲一区免费观看| 亚洲人人精品| 欧美11—12娇小xxxx| 久久成人国产| 午夜久久一区| 亚洲一区二区三区免费在线观看| 亚洲黄一区二区三区| 韩国欧美一区| 国产一区二区无遮挡| 国产精品天美传媒入口| 欧美三级网址| 欧美色综合天天久久综合精品| 欧美精品久久久久久久|