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

posts - 43,  comments - 9,  trackbacks - 0
pku 3726 Windy's ABC
題意:
給一個由ABC三種字母構成的長度不超過500的字串.
定義這個串的合法副本為:
原串任意位置字母的下標,與它在新串中的下標絕對值之差不超過 Ri.
求合法副本的種類數.
注:
1. 原串本身也是個合法副本
2. 求的是不同串的種類數, "A1B2B3A4" 和 "A1B3B2A4" 算同一種.
解:
先通過O(n)的遞推, 求出每種字母在前k位中至少需要/至多能出現多少次, 然后500^3的DP.
對一個合法的狀態(i,j,k)(分別表示3種字母的個數), 擴展它的3種后續狀態.
這里不用檢查擴展出的新狀態的合法性, 因為到下一步DP時, 只有合法的狀態才會被繼續擴展. 這是這題解法處理的巧妙之處.

代碼:
?1?#include?<cstdio>
?2?#include?<cstdlib>
?3?#include?<cstring>
?4?#include?<algorithm>
?5?using?namespace?std;
?6?const?int?MOD?=?20090305;
?7?char?ch[3]?=?{'A','B','C'};
?8?int?n[3][510][2];
?9?int?dp[2][510][510];
10?int?R[3],L;
11?char?S[510];
12?int?T;
13?
14?void?prepare(){
15?????int?i,j,k;
16?????int?c[510];
17?????memset(n,0,sizeof(n));
18?????for(i=0;?i<3;?i++){
19?????????int?cnt?=?0;
20?????????for(j=0;?j<L;?j++){
21?????????????if(S[j]-'A'?==?i)?cnt++;
22?????????????//printf("%d,%d,%d?",i,j,cnt);
23?????????????if(j>=R[i])?n[i][j-R[i]][1]?=?cnt;
24?????????????if(j<L-R[i])?n[i][j+R[i]][0]?=?cnt;
25?????????}
26?????????for(j=0;?j<R[i];?j++){
27?????????????n[i][L-1-j][1]?=?cnt;
28?????????????n[i][j][0]?=?0;
29?????????}
30?????}
31?}
32?
33?int?dodp(){
34?????int?l,i,j,k;
35?????int?ans?=?0;
36?????memset(dp,0,sizeof(dp));
37?????for(i=0;?i<L;?i++)
38?????????for(j=0;?j<L;?j++)
39?????????????dp[0][i][j]?=?1;
40?????for(l=0;?l<L;?l++){
41?????????int?p1=l%2,?p2=(l+1)%2;
42?????????memset(dp[p2],0,sizeof(dp[p2]));
43?????????for(i=n[0][l][0];?i<=n[0][l][1];?i++){
44?????????????for(j=n[1][l][0];?j<=n[1][l][1];?j++){
45?????????????????k?=?l+1-i-j;
46?????????????????//printf("s%d,%d,%d?",l,i,j);
47?????????????????if(k<n[2][l][0]?||?k>n[2][l][1])?continue;
48?????????????????if(!dp[p1][i][j])?continue;
49?????????????????//printf("y%d,%d,%d(%d)?",l,i,j,dp[p1][i][j]);
50?????????????????if(l==L-1){?ans?+=?dp[p1][i][j];?continue;?}
51?????????????????dp[p2][i+1][j]?=?(dp[p2][i+1][j]+dp[p1][i][j])?%?MOD;
52?????????????????dp[p2][i][j+1]?=?(dp[p2][i][j+1]+dp[p1][i][j])?%?MOD;
53?????????????????dp[p2][i][j]?=?(dp[p2][i][j]+dp[p1][i][j])?%?MOD;
54?????????????}
55?????????}
56?????}
57?????return?ans;
58?}
59?
60?int?main(){
61?????int?i,j,k;
62?????scanf("%d",&T);
63?????while(T--){
64?????????scanf("%d?%d?%d",R,R+1,R+2);
65?????????scanf("%s",S);
66?????????L?=?strlen(S);
67?????????prepare();
68?????????printf("%d\n",dodp());
69?????}
70?????return?0;
71?}
72?



posted on 2009-06-29 21:44 wolf5x 閱讀(303) 評論(0)  編輯 收藏 引用 所屬分類: acm_icpc
<2009年6月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

"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

搜索

  •  

最新評論

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美亚洲网站| 欧美a级理论片| 在线观看亚洲精品| 黄色成人免费观看| 国产一区自拍视频| 国内精品久久久久久影视8 | 欧美黄色成人网| 亚洲国产裸拍裸体视频在线观看乱了| 久久久中精品2020中文| 免费精品99久久国产综合精品| 麻豆精品网站| 亚洲精品影院在线观看| 亚洲性线免费观看视频成熟| 午夜精品在线观看| 美女国内精品自产拍在线播放| 欧美激情性爽国产精品17p| 欧美午夜宅男影院| 国产综合久久| 亚洲午夜久久久久久久久电影院| 欧美在线免费视屏| 亚洲第一福利社区| 亚洲一区国产精品| 久久免费视频在线观看| 欧美激情精品久久久久久变态| 日韩午夜免费| 久久精品亚洲一区二区| 欧美日韩一区二区国产| 韩国成人福利片在线播放| 日韩写真视频在线观看| 欧美亚洲自偷自偷| 亚洲国产精品久久久久婷婷老年| 亚洲一级二级在线| 欧美激情在线| 国内外成人免费视频 | 亚洲一区二区精品在线| 久久久国产精品一区二区三区| 亚洲国产综合在线| 久久精品91久久久久久再现| 欧美成人一区二区三区片免费| 日韩图片一区| 欧美a级大片| 国产自产在线视频一区| 亚洲欧美在线免费观看| 亚洲人成啪啪网站| 免费高清在线一区| 伊人色综合久久天天五月婷| 久久成人亚洲| 亚洲影院高清在线| 欧美日韩精品一区二区天天拍小说| 狠狠色噜噜狠狠狠狠色吗综合| 亚洲欧美成人| 一片黄亚洲嫩模| 欧美日韩亚洲另类| 一区二区高清视频在线观看| 欧美激情第五页| 久久综合网色—综合色88| 国语自产精品视频在线看8查询8| 欧美一级视频免费在线观看| 在线亚洲一区| 国产精品影音先锋| 欧美一级黄色录像| 亚洲欧美日韩国产成人精品影院| 国产精品久久久久久久久动漫| 一区二区三区日韩在线观看| 91久久久亚洲精品| 欧美日韩一区在线视频| 亚洲香蕉网站| 亚洲一区二区日本| 国产午夜精品一区二区三区欧美 | 亚洲国产精品毛片| 欧美美女喷水视频| 亚洲一区二区三区在线视频| 一区二区黄色| 欧美一区2区三区4区公司二百| 亚洲福利视频三区| 亚洲午夜高清视频| 一区二区日韩欧美| 亚洲国产精品美女| 欧美成人免费在线| 日韩亚洲在线观看| 一区二区三区福利| 国产美女一区二区| 久久永久免费| 欧美激情一区二区三区四区| 一区二区三区导航| 亚洲欧美制服中文字幕| 激情综合色丁香一区二区| 欧美成人自拍视频| 欧美午夜免费| 久久综合中文| 欧美激情影院| 久久久成人精品| 欧美理论电影在线播放| 欧美在线播放| 欧美sm视频| 欧美专区18| 欧美区视频在线观看| 久久国产精品电影| 欧美日本中文字幕| 久久精品一区二区| 欧美四级在线观看| 欧美插天视频在线播放| 国产精品女人久久久久久| 欧美成人日韩| 国产精品天天看| 亚洲黄色有码视频| 精品福利av| 亚洲欧美一级二级三级| 宅男精品视频| 欧美成人免费小视频| 麻豆成人在线播放| 国产精品综合视频| aa级大片欧美三级| 亚洲精品一区二区三区福利| 久久www成人_看片免费不卡| 亚洲欧美综合v| 欧美日韩国产不卡| 亚洲人成绝费网站色www| 一区二区三区在线不卡| 亚洲女性裸体视频| 亚洲永久在线观看| 欧美喷水视频| 最近中文字幕日韩精品| 亚洲高清久久久| 久久视频免费观看| 免费高清在线一区| 久久亚洲欧美| 久久久久国产精品一区三寸| 欧美日韩和欧美的一区二区| 久久综合久久久| 国产一区二区观看| 亚洲无限av看| 欧美日韩一视频区二区| 亚洲精品视频免费观看| 亚洲精品专区| 欧美精品一区二区高清在线观看| 欧美激情一区二区三区全黄| 亚洲国产日韩美| 米奇777在线欧美播放| 欧美大片免费| 日韩视频永久免费| 欧美精品免费在线观看| 亚洲精品裸体| 亚洲欧美一区二区在线观看| 国产欧美日韩综合一区在线播放| 午夜精品一区二区三区在线播放| 久久久精品国产99久久精品芒果| 国产一区二区三区自拍| 久久久一本精品99久久精品66| 另类图片国产| 日韩天堂在线观看| 国产精品国产三级国产专区53| 亚洲性视频网址| 美女精品自拍一二三四| 亚洲精品一区久久久久久| 欧美日韩一区二区免费在线观看| 一区二区三区欧美激情| 欧美专区一区二区三区| 伊人春色精品| 欧美日韩一区二| 久久精品一区二区三区不卡牛牛| 欧美国产日韩精品| 亚洲一区二区三区欧美| 国产亚洲精品综合一区91| 老**午夜毛片一区二区三区| 亚洲精品免费在线观看| 性久久久久久| 亚洲欧洲在线观看| 国产精品日韩专区| 久久女同互慰一区二区三区| 99精品视频一区| 久久综合久色欧美综合狠狠| 一本色道久久综合亚洲精品婷婷| 国产精品一区二区三区乱码| 久热精品在线| 亚洲欧洲av一区二区三区久久| 欧美激情精品久久久| 久久国产精品网站| 99国产精品久久久久久久| 国产日韩欧美综合一区| 媚黑女一区二区| 午夜一区二区三区不卡视频| 亚洲精品少妇30p| 欧美 日韩 国产精品免费观看| 亚洲私拍自拍| 亚洲精品乱码久久久久久蜜桃91 | 国产深夜精品| 欧美成人午夜激情在线| 香蕉久久a毛片| 日韩一区二区精品在线观看| 美女网站久久| 久久se精品一区二区| 在线亚洲精品| 欧美激情国产日韩| 欧美亚洲视频一区二区| 一区二区三区国产在线| 亚洲韩国一区二区三区| 男女av一区三区二区色多| 久久精品国产清高在天天线 | 欧美破处大片在线视频|