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

[USACO 09NOV] silver xoinc [dp]

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

周六第一次做usaco玩,bronze的輕松切掉,然后申請promote,下午批準,話說rob 效率好高啊~ 于是繼續做silver 就遇到這個題- -!糾結了半天放棄····知道是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,每個人每次取得個數為1- 2*n;n為上一輪對方取得數目,
求兩個人都是用最佳策略,先取得那個家伙最多能拿到多少硬幣。貌似可以算是簡單博弈論的思想
思路:
        coins[1···N] 從下到上 sum[1···N] 剩下 i個的和
        找到無后效性的子問題??紤]在還剩下p個錢幣時候的情況,此時可以拿k個錢
由于條件,k的大小受上一輪拿的個數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的數據量  觀察可以得出 dp[p][j] 和 dp[p][j+1] 的計算有很多的重疊
因為 上次拿了j+1 則可以比 dp[p][j] 多拿 2 個 

然后,由于考慮j的范圍 應該為 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個月后注:事實證明,當時么有時間 ~以后更沒有時間 ~~~ 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>
            国产精品视频网址| 亚洲一级特黄| 亚洲中字黄色| 亚洲一二三四久久| 在线亚洲欧美视频| 亚洲手机成人高清视频| 中文国产成人精品久久一| 亚洲视频一区在线| 亚洲在线成人| 久久精品在线| 女女同性精品视频| 亚洲精品欧美激情| 亚洲午夜伦理| 免费日本视频一区| 国产精品扒开腿做爽爽爽软件 | 亚洲在线一区| 久久爱www久久做| 欧美日韩大片| 国产精品亚洲不卡a| 韩国三级在线一区| 在线视频精品一区| 久久亚洲图片| 中日韩美女免费视频网址在线观看 | 久久久久亚洲综合| 欧美精品日韩一区| 国产婷婷色一区二区三区在线| 伊人久久成人| 亚洲免费一级电影| 欧美va亚洲va国产综合| 一区二区免费看| 米奇777超碰欧美日韩亚洲| 国产精品久99| 夜夜爽99久久国产综合精品女不卡 | 国外成人免费视频| 99精品99| 欧美好吊妞视频| 欧美在线地址| 国产精品日本欧美一区二区三区| 亚洲精品久久久久久久久久久久 | 国产欧美日韩视频在线观看| 久久激情五月婷婷| 欧美激情在线| 一区二区三区在线高清| 亚洲性视频网站| 欧美大片免费观看| 久久精品成人欧美大片古装| 国产精品jizz在线观看美国| 亚洲福利小视频| 亚洲精品中文字幕有码专区| 久久综合久久综合九色| 欧美日韩精品欧美日韩精品一| 一区二区三区 在线观看视频 | 在线成人免费观看| 亚洲人成在线观看一区二区| 欧美在线日韩在线| 亚洲裸体俱乐部裸体舞表演av| 久久久91精品国产一区二区三区| 国产精品啊啊啊| 亚洲性视频网站| 亚洲美女视频在线观看| 美女视频黄 久久| 狠狠入ady亚洲精品经典电影| 一区二区三区.www| 欧美国产精品劲爆| 久久精品国产99国产精品澳门| 国产精品一区一区| 欧美在线www| 欧美一区二区三区在线观看视频| 国产精品一区久久久久| 欧美自拍丝袜亚洲| 欧美中文字幕| 在线日韩av片| 亚洲国产精品一区二区尤物区 | 午夜免费日韩视频| 一区二区冒白浆视频| 国产精品久久久久久模特 | 好吊妞这里只有精品| 久久精品亚洲精品国产欧美kt∨| 亚洲女人天堂成人av在线| 国产美女精品视频| 久久人人97超碰国产公开结果| 久久精品日产第一区二区三区| 国产在线拍揄自揄视频不卡99| 久久精品99国产精品酒店日本| 久久裸体艺术| 欧美一区1区三区3区公司| 亚洲精品久久在线| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲高清视频一区二区| 欧美一区1区三区3区公司| 亚洲一区二区三区乱码aⅴ蜜桃女| 国产真实乱偷精品视频免| 亚洲在线视频网站| 日韩一级精品视频在线观看| 欧美日韩亚洲国产一区| 久久久久久久久一区二区| 日韩午夜在线视频| 欧美高潮视频| 亚洲一区久久久| 久久久xxx| 亚洲视频欧美在线| 欧美一级网站| 亚洲精品一区二区三区蜜桃久| 日韩视频免费在线| 国产伦精品一区二区| 亚洲国产精品久久久久| 欧美三日本三级少妇三2023| 欧美一级网站| 欧美激情中文字幕乱码免费| 性亚洲最疯狂xxxx高清| 久久免费视频在线观看| 亚洲欧美视频在线观看视频| 久久夜色精品国产| 久久av一区二区三区亚洲| 亚洲国产精品成人综合色在线婷婷| 欧美视频第二页| 美国十次了思思久久精品导航| 欧美欧美天天天天操| 老司机精品视频网站| 国产精品日本欧美一区二区三区| 亚洲激情偷拍| 91久久嫩草影院一区二区| 欧美在线91| 久久狠狠婷婷| 国产精品久久久久久亚洲调教| 亚洲国产岛国毛片在线| 禁断一区二区三区在线| 欧美亚洲专区| 久久xxxx| 国产毛片一区二区| 亚洲午夜久久久| 亚洲免费网站| 国产精品美女一区二区| 亚洲毛片在线观看| 日韩午夜电影在线观看| 欧美国产第一页| 亚洲精品综合久久中文字幕| 亚洲国产片色| 欧美高清视频一二三区| 亚洲国产天堂久久综合| 亚洲精品影视| 欧美日韩亚洲高清| 亚洲欧洲一区二区三区| 久久久久久亚洲精品不卡4k岛国| 久久久亚洲精品一区二区三区| 国产视频一区在线| 欧美亚洲日本国产| 久久久91精品国产一区二区三区| 国产乱码精品一区二区三| 亚洲曰本av电影| 亚洲欧美日产图| 国产日韩亚洲欧美精品| 午夜亚洲一区| 榴莲视频成人在线观看| 亚洲成人中文| 欧美日本三区| 欧美一级黄色录像| 免费在线亚洲欧美| 亚洲日本成人| 国产精品成人一区二区艾草| 亚洲欧美在线另类| 欧美成人激情视频| 日韩亚洲一区在线播放| 欧美视频在线观看免费| 亚洲欧美日韩国产精品 | 老司机午夜精品视频在线观看| 久久在线免费视频| 亚洲国产精品va在线看黑人| 欧美成人一区二区三区| 99在线热播精品免费| 久久经典综合| 日韩一级精品| 狠狠久久婷婷| 国产精品视频大全| 欧美成人亚洲| 欧美在线观看你懂的| 欧美日韩国产成人| 99视频精品全部免费在线| 国产精品系列在线| 免费观看亚洲视频大全| 亚洲一本视频| 亚洲电影在线观看| 久久aⅴ国产欧美74aaa| aa级大片欧美| 尤物99国产成人精品视频| 欧美三级视频在线| 老司机久久99久久精品播放免费| 亚洲一区二区在线看| 亚洲欧洲精品成人久久奇米网| 久久久久国产精品一区| av成人毛片| 亚洲区免费影片| 精品成人乱色一区二区| 国产老女人精品毛片久久| 欧美日韩国产电影| 欧美成人首页| 麻豆成人小视频| 久久久7777| 性8sex亚洲区入口| 亚洲一级黄色av|