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

TC-srm249-Tableseat-DP-狀態(tài)排列

Posted on 2009-11-12 21:45 rikisand 閱讀(310) 評論(0)  編輯 收藏 引用 所屬分類: Topcoder 、Algorithm

Your restaurant has numTables tables to seat customers. The tables are all arranged in a line. If a large party of customers comes in, a group of adjacent tables will be used. Which group of tables is entirely up to the customer. Since you cannot predict this, assume all possible choices occur with equal probability. What you can predict is the size of each group of customers that arrives. Element i of probs gives the probability, in percent, that an entering party will need i+1 tables. Assuming nobody leaves, return the expected number of tables you will use before a party must be turned away. This only occurs if there is no place to seat them.

Method signature:
double getExpected(int numTables, vector <int> probs)

numTables will be between 1 and 12 inclusive.
probs will contain between 1 and 12 elements inclusive.
Each element of probs will be between 0 and 100 inclusive.
The elements of probs will sum to 100.

 

misof 數(shù)字表達(dá)教程里的習(xí)題~ 題目大意 求使用桌子的期望。由于到來group的個數(shù)不定,每個group需要的桌子不定,使確定期望變得困難。但考慮對于numTables來說,使用桌子的狀態(tài)僅僅有 2^numTables種,因此考慮在這些狀態(tài)改變的過程中來計算期望,也就是計算在每個狀態(tài)下面的期望桌子數(shù)目。在每個狀態(tài)到達(dá)時,依次考慮來了一個group需要k個位子,如果r種安排可以滿足k個位子,那么當(dāng)前狀態(tài)的期望值要加上 來k個位子的概率 X (r種安排分別的期望和 / r) 其中求r中安排期望和則需要 遞歸調(diào)用函數(shù)。顯然利用memo可以減少重復(fù)計算于是有下面的解法:

vector<double> p;
double dp[1<<13];   
int tb;
double solve(int cur){
    if(dp[cur]>-1.0)return dp[cur];    //memo available
    double ret=0;double sum;int kind;
    for(int i=0;i<p.size();i++){
        sum=0,kind=0;
        int mask=(1<<(i+1))-1;    //new group need i+1 adjacent tables
        for(int j=0;j+i+1<=tb;j++){
            if((cur&(mask<<j))==0){    //current pattern could meet the need
                sum+=solve(cur+(mask<<j))+i+1;    //total method ++
                kind++;
            }
        }
        if(kind!=0)sum/=kind; //caculate the average need
        ret+=sum*p[i];
    }
    dp[cur]=ret;
    return ret;
}

        double getExpected(int numTables, vector <int> probs)
        {
                tb=numTables;
                REP(i,1<<13)dp[i]=-1.0;
                p.resize(probs.size());
                for(int i=0;i<probs.size();i++)p[i]=probs[i]*0.01;
                return solve(0);//the beginning pattern
        }

看比賽中有另一種解法,即根據(jù)題目,在到達(dá)每次fail to serve a group 的時候 根據(jù)此時的桌子數(shù)量,和到達(dá)這種狀態(tài)的概率 來計算:

dp[1<<13][15];memset(dp,0,sizeof(dp));// :D lucily I can do this for 0

double fails=0.0;bool flag ;

for(int i=1;i<=numTables+1;i++)  //循環(huán)最多numTables+1 次

{flag=true;

for(int j=0;j<p.size();j++){

     int mask=(1<<(j+1))-1;//注意移位運(yùn)算符的優(yōu)先級低,注意加括號

     for(int k=0;k<=(1<<numTables-1);k++){

          if(dp[k][i-1]<=0.0)continue;

          flag=false;

          int cnt=0;

          for(int m=0;m+j+1<=numTables;m++) if((mask<<m)&k==0)cnt++;

          if(cnt)for(int m=0;m+j+1<=numTables;m++)if((mask<<m)&k==0)dp[mask<<m|k][i]+=dp[k][i-1]*p[j]/cnt;

          if(!cnt){

                 int b=k,bn=0;while(b){if(b&1)bn++;b>>=1;}

                 fail+=dp[k][i-1]*bn; 

         }

    }

}

if(flag)return fail;//all dp[][k]==0.0

}

return fail;

 

優(yōu)先級很容易錯:

http://www.cppreference.com/wiki/operator_precedence~。~

典型的幾個

++ -- <post-incre-decre>

~ <bitwise complement> !<not>&<addresss> *<dereference>&<address>

*  / %

+ -

>>  <<

< <= > >=

== !=

&

^ xor

|

&&

||

?=

= += –= <<= >>=

,

 

從上到下依次降低~~~~~~~~~~~~~~~~~~··

 

 

 

 

 

 

 


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲黄色一区| 国产偷国产偷精品高清尤物| 久久亚洲综合网| 久久人人爽人人| 亚洲国产91| 亚洲一区二区三区中文字幕在线| 亚洲欧美日韩网| 米奇777超碰欧美日韩亚洲| 欧美日韩国产色综合一二三四| 欧美性理论片在线观看片免费| 国产亚洲aⅴaaaaaa毛片| 久久激情久久| av不卡免费看| 久久综合九色九九| 国产日韩一区二区三区在线播放| 久久午夜视频| 欧美日本高清一区| 亚洲国产婷婷综合在线精品| 欧美一区=区| 一本久道久久综合狠狠爱| 欧美一级淫片aaaaaaa视频| 欧美日韩精品一区二区天天拍小说 | 亚洲欧洲一二三| 国产精品亚洲综合色区韩国| 亚洲精品乱码久久久久久蜜桃91 | 久久国产精品99久久久久久老狼| 亚洲精选一区| 欧美成人tv| 亚洲国产高清视频| 欧美aaaaaaaa牛牛影院| 欧美在线综合视频| 国产乱肥老妇国产一区二| 在线亚洲高清视频| 亚洲日本激情| 欧美涩涩视频| 亚洲欧美日产图| 亚洲精品美女久久7777777| 国产女主播一区二区| 性欧美暴力猛交69hd| 午夜精彩国产免费不卡不顿大片| 亚洲国产精品一区在线观看不卡| 亚洲一区精彩视频| 亚洲精品中文字幕女同| 亚洲欧洲日本专区| 一区二区在线不卡| 老牛影视一区二区三区| 久久久精品国产免大香伊| 黄色av一区| 亚洲国产精品成人一区二区| 欧美激情精品久久久| av成人国产| 亚洲一区二区视频在线| 日韩视频免费| 欧美精品首页| 欧美一级夜夜爽| 可以看av的网站久久看| 欧美理论电影在线观看| 久久婷婷国产麻豆91天堂| 国产精品成人v| 亚洲最新在线| 欧美成人中文| 欧美成人免费在线观看| 欧美精品一区二区三区蜜臀| 欧美r片在线| 亚洲国产二区| 欧美刺激午夜性久久久久久久| 久久这里只有| 在线日韩视频| 中文久久乱码一区二区| 国内揄拍国内精品少妇国语| 午夜精品电影| 久久国产色av| 狠狠色2019综合网| 老司机免费视频一区二区| 亚洲第一毛片| 中文精品视频一区二区在线观看| 亚洲综合精品一区二区| 在线观看视频免费一区二区三区| 亚洲精品女人| 日韩一级在线| 久久国内精品自在自线400部| 日韩视频不卡中文| 欧美色图首页| 欧美一区二区三区视频免费播放| 久久一综合视频| 亚洲精品中文字幕在线观看| 欧美日韩在线电影| 亚洲高清一二三区| 中日韩男男gay无套| 国产精品视频观看| 久久久精品一区| 亚洲精品少妇| 久久精品国产亚洲精品| 91久久精品国产91性色tv| 久久99伊人| 亚洲国内自拍| 欧美在线视频一区二区三区| 亚洲国产精品va在看黑人| 欧美揉bbbbb揉bbbbb| 欧美在线免费播放| 亚洲精选视频免费看| 久久九九热re6这里有精品| 欧美日韩中文字幕精品| 欧美中文字幕久久| 日韩一区二区精品视频| 亚洲久久成人| 国产丝袜一区二区| 欧美激情中文不卡| 亚洲欧美精品在线| 亚洲黄色片网站| 久久久久一区二区三区| 亚洲影视中文字幕| 欧美亚洲不卡| 美女精品国产| 欧美一区二区三区免费大片| 亚洲精品在线观| 免费高清在线一区| 亚洲黄色精品| 国产日产精品一区二区三区四区的观看方式 | 国产视频综合在线| 欧美三区免费完整视频在线观看| 久久国产精品久久久久久电车| 亚洲美女黄网| 欧美激情第3页| 亚洲国产清纯| 国产无一区二区| 欧美午夜无遮挡| 欧美精品在线观看| 美腿丝袜亚洲色图| 久久精品一区二区国产| 亚洲欧美欧美一区二区三区| 9色国产精品| 91久久精品国产91性色| 久久人体大胆视频| 久久九九国产精品| 欧美一级大片在线观看| 亚洲一区二区三区在线播放| 国产精品国产三级国产aⅴ入口 | 国产亚洲一区二区在线观看| 欧美一区91| 亚洲男女毛片无遮挡| 一区二区三区视频在线| 亚洲精品在线免费观看视频| 亚洲欧洲一区| 91久久精品国产91性色tv| 亚洲国产国产亚洲一二三| 欧美成人国产| 亚洲国产精品999| 欧美激情一区二区| 亚洲国产精品va在线看黑人| 亚洲国产精品久久人人爱蜜臀| 欧美成人福利视频| 欧美韩国一区| 亚洲国产综合91精品麻豆| 亚洲欧洲日产国产综合网| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲国产高清一区| 日韩视频专区| 亚洲欧美999| 欧美中文在线免费| 麻豆freexxxx性91精品| 欧美激情一区二区三区四区| 欧美日韩一区不卡| 国产欧美日韩视频在线观看| 国产一区亚洲| 国产精品进线69影院| 国产免费观看久久黄| 激情久久久久| 99re8这里有精品热视频免费 | 亚洲一区欧美| 久久精品99无色码中文字幕| 乱中年女人伦av一区二区| 亚洲二区在线| 亚洲少妇中出一区| 久久国产视频网| 欧美精彩视频一区二区三区| 国产精品免费网站| 欧美精品乱码久久久久久按摩| 欧美日韩精品是欧美日韩精品| 国产精品免费一区二区三区观看| 国内精品伊人久久久久av影院| 最新日韩中文字幕| 午夜在线一区| 亚洲黄色av一区| 亚洲资源在线观看| 欧美成人精品在线视频| 国产精品激情| 亚洲激情另类| 久久国产精品色婷婷| 亚洲激情一区| 久久精品99国产精品日本| 欧美日韩p片| 在线成人h网| 欧美在线看片| 99精品热6080yy久久| 久久女同互慰一区二区三区| 久久免费99精品久久久久久| 欧美视频一区二区| 亚洲人成在线观看网站高清| 久久9热精品视频|