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

[USACO 09NOV] silver xoinc [dp]

Posted on 2009-11-12 00:20 rikisand 閱讀(523) 評論(0)  編輯 收藏 引用 所屬分類: AlgorithmUSACO

周六第一次做usaco玩,bronze的輕松切掉,然后申請promote,下午批準(zhǔn),話說rob 效率好高啊~ 于是繼續(xù)做silver 就遇到這個題- -!糾結(jié)了半天放棄····知道是dp 也考慮了方法就是 理不清楚;不知道是不是一天沒吃飯的緣故·····

今天題解出來了~ 先看了大概思路 然后自己寫出來了~

題目:

Farmer John's cows like to play coin games so FJ has invented with
a new two-player coin game called Xoinc for them.

Initially a stack of N (5 <= N <= 2,000) coins sits on the ground;
coin i from the top has integer value C_i (1 <= C_i <= 100,000).
The first player starts the game by taking the top one or two coins
(C_1 and maybe C_2) from the stack. If the first player takes just
the top coin, the second player may take the following one or two
coins in the next turn. If the first player takes two coins then
the second player may take the top one, two, three or four coins
from the stack. In each turn, the current player must take at least
one coin and at most two times the amount of coins last taken by
the opposing player. The game is over when there are no more coins
to take.

Afterwards, they can use the value of the coins they have taken
from the stack to buy treats from FJ, so naturally, their purpose
in the game is to maximize the total value of the coins they take.
Assuming the second player plays optimally to maximize his own
winnings, what is the highest total value that the first player can
have when the game is over?

MEMORY LIMIT: 20 MB

PROBLEM NAME: xoinc

INPUT FORMAT:

* Line 1: A single integer: N

* Lines 2..N+1: Line i+1 contains a single integer: C_i

SAMPLE INPUT (file xoinc.in):

5
1
3
1
7
2
簡單來說就是兩個人輪流取coins,每個人每次取得個數(shù)為1- 2*n;n為上一輪對方取得數(shù)目,
求兩個人都是用最佳策略,先取得那個家伙最多能拿到多少硬幣。貌似可以算是簡單博弈論的思想
思路:
        coins[1···N] 從下到上 sum[1···N] 剩下 i個的和
        找到無后效性的子問題。考慮在還剩下p個錢幣時候的情況,此時可以拿k個錢
由于條件,k的大小受上一輪拿的個數(shù)i的限制 ,所以我們要加上一個變量i。得到
dp[p][i]這個子問題。那么容易得到
dp[p][i]=max(1=<k<=i*2){SuM(p to p-k+1)+SuM(p-k to 1)-dp[p-k][k]}
            =max(1=<k<=i*2){sum[p]-dp[p-k][k]}
按照這個可以得到一個O(N^3)的算法

oidsolve(){
  
for(inti=1;i<=N;i++)
//剩下i個
       
for(intj=1;j<=N;j++)
//上一人拿了j 個
           
for(intk=1;k<=j*2&&i-k>=0
;k++){
                dp[i][j]=max(dp[i][j],sum[
1]-sum[i+1
]-dp[i-k][k]);
            }
    ret=dp[N][
1
];
}

 三重遞歸 ,最多可以過500的數(shù)據(jù)量  觀察可以得出 dp[p][j] 和 dp[p][j+1] 的計(jì)算有很多的重疊
因?yàn)?上次拿了j+1 則可以比 dp[p][j] 多拿 2 個 

然后,由于考慮j的范圍 應(yīng)該為 N-i+1

這樣得到了最終代碼:

scanf("%d",&N);
for(int i=1;i<=N;i++)    scanf("%d",coins+i);//{fin>>coins[i]; }
sum[0]=0;
for(int i=1;i<=N;i++)     sum[i]=sum[i-1]+coins[N-i+1]; 
for(int i=1;i<=N;i++)        //剩下i個
for(int j=1;j<= N-i +1;j++){ // 上次拿了j個
if(dp[i][j]<dp[i][j-1])dp[i][j]=dp[i][j-1];
if(2*j-1<=i&&dp[i][j]<sum[i]-dp[i-2*j+1][2*j-1]) dp[i][j]=sum[i]-dp[i-2*j+1][2*j-1];
if(2*j<=i&&dp[i][j]<sum[i]-dp[i-2*j][2*j]) dp[i][j]= sum[i]-dp[i-2*j][2*j];
}
printf("%d\n",dp[N][1]);

很晚了 ,先寫這么多 ,有空把bronze的寫了

3個月后注:事實(shí)證明,當(dāng)時么有時間 ~以后更沒有時間 ~~~ hoho`````````~~~~~~~``````````

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美精品播放| 亚洲一区二区3| 性色av一区二区怡红| 久久综合给合| 亚洲综合第一| 一本色道久久综合亚洲91| 国产免费成人| 国产精品成人观看视频国产奇米| 久久久久亚洲综合| 欧美一级在线亚洲天堂| 在线高清一区| 一区二区三区在线观看欧美| 国产一区二区三区久久精品| 国产欧美69| 狠狠入ady亚洲精品| 黑人操亚洲美女惩罚| 在线观看国产日韩| 91久久久久| 伊人夜夜躁av伊人久久| 黑人操亚洲美女惩罚| 亚洲区国产区| 最新国产拍偷乱拍精品| 亚洲欧美韩国| 久久这里有精品视频| 欧美激情成人在线视频| 亚洲激情在线视频| 亚洲国产日韩欧美在线动漫| 亚洲图片激情小说| 久久激五月天综合精品| 亚洲精品一区二区三区av| 亚洲伦理在线观看| 先锋影音国产一区| 一本一本久久a久久精品综合妖精| 久久亚洲春色中文字幕久久久| 在线免费高清一区二区三区| 久久久无码精品亚洲日韩按摩| 亚洲一区在线播放| 欧美亚州一区二区三区| 91久久久久久久久| 欧美xx视频| 久久亚洲精选| 在线不卡欧美| 久久se精品一区精品二区| 久久一综合视频| 免费永久网站黄欧美| 欧美日韩一区二区在线观看| 久久国产手机看片| 国产精品推荐精品| av成人毛片| 99re6这里只有精品| 欧美日韩国产三区| 亚洲天堂av在线免费| 91久久久久久国产精品| 欧美日韩福利在线观看| av成人激情| 亚洲欧美亚洲| 亚洲激情校园春色| 日韩视频免费看| 国产欧美在线观看一区| 久久婷婷国产综合国色天香| 久久精品99无色码中文字幕| 黄色亚洲大片免费在线观看| 久久久久免费视频| 欧美电影电视剧在线观看| 一区二区三区视频免费在线观看| 日韩网站在线观看| 国产色产综合产在线视频| 美国十次了思思久久精品导航| 欧美电影在线观看完整版| 亚洲欧美国产三级| 欧美激情第9页| 蜜臀av在线播放一区二区三区| 欧美二区在线| 久久精品女人| 国产精品久久久久一区| 噜噜噜91成人网| 国产精品夫妻自拍| 亚洲成在线观看| 影视先锋久久| 在线欧美小视频| 久久深夜福利免费观看| 一二三区精品| 夜夜嗨av一区二区三区中文字幕 | 尤妮丝一区二区裸体视频| 亚洲乱码一区二区| 亚洲精品在线视频观看| 久久久一二三| 欧美大片在线观看一区| 精品999网站| 久久人人97超碰精品888| 蜜臀91精品一区二区三区| 亚洲福利一区| 欧美另类视频| 亚洲少妇最新在线视频| 亚洲欧美在线看| 国内成人精品视频| 老司机免费视频一区二区| 亚洲高清精品中出| 亚洲视频一区二区在线观看| 欧美理论电影在线观看| 亚洲免费一区二区| 欧美成人一品| 亚洲欧美日韩综合| 国产精品资源在线观看| 欧美1级日本1级| 性刺激综合网| 亚洲人成在线观看网站高清| 亚洲日本国产| 国产日韩一区二区| 嫩草伊人久久精品少妇av杨幂| 亚洲精品久久久久久一区二区| 欧美一区二区高清在线观看| 亚洲九九精品| 欧美日韩在线影院| 久久久999精品免费| 日韩一区二区高清| 免费国产自线拍一欧美视频| 亚洲视频在线二区| 99国产精品久久久| 亚洲大片一区二区三区| 国产自产在线视频一区| 欧美精品久久一区二区| 久久青草福利网站| 欧美在线你懂的| 欧美亚洲综合久久| 亚洲一区三区电影在线观看| 国产精品国产三级国产普通话三级 | 中日韩美女免费视频网址在线观看| 国产精品乱子久久久久| 欧美日韩成人在线观看| 欧美三级第一页| 国产精品福利影院| 国产精品www.| 国产亚洲欧美日韩日本| 国产亚洲精品bv在线观看| 国产日韩亚洲欧美精品| 狠狠色丁香久久婷婷综合丁香| 国产欧美亚洲一区| 亚洲第一黄色| 亚洲午夜影视影院在线观看| 午夜亚洲伦理| 亚洲第一主播视频| 一本色道久久综合亚洲精品高清| 一本大道av伊人久久综合| 性欧美video另类hd性玩具| 亚洲欧洲一级| 久久精品国产综合精品| 欧美国内亚洲| 国产日韩欧美成人| 亚洲精品乱码久久久久久蜜桃麻豆 | 欧美高清视频一区| 国产精品久久久对白| 亚洲第一免费播放区| 欧美亚洲免费电影| 亚洲精品视频免费观看| 久久精品电影| 国产精品欧美激情| 99在线精品视频| 欧美成人免费一级人片100| 亚洲在线网站| 国产精品超碰97尤物18| 欧美精品免费在线| 亚洲国产精品久久久久秋霞影院 | 欧美日韩亚洲综合一区| 一区二区三区在线免费视频| 午夜影院日韩| 亚洲影视在线| 国产三级欧美三级| 久久久久久久国产| 欧美在线亚洲| 伊人久久久大香线蕉综合直播| 欧美在线一级va免费观看| 亚洲欧美精品在线| 亚洲图片欧洲图片日韩av| 欧美午夜剧场| 久久久免费av| 欧美黄色aaaa| 亚洲欧美成人精品| 久久久久这里只有精品| 亚洲另类春色国产| 欧美色图五月天| 欧美日韩视频在线一区二区观看视频| 尤物九九久久国产精品的分类| 免费欧美视频| 国产精品久久久| 欧美大胆成人| 国产精品va在线播放| 久久亚裔精品欧美| 欧美四级电影网站| 欧美h视频在线| 国产日本亚洲高清| 亚洲卡通欧美制服中文| 国产一区清纯| 一区二区三区精品视频| 亚洲成人影音| 久久九九电影| 久久成人免费| 国产精品成av人在线视午夜片| 欧美激情日韩| 伊人色综合久久天天五月婷|