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

posts - 43,  comments - 9,  trackbacks - 0
uva4031 Integer Transmission (DP)
題意:
傳送一個長度在64之內的01串,第i時刻發送出第i字節(i=0,1,...,L-1).對任意第i時刻發出的字節,它有可能在i+1,i+2,...,i+d+1(d<=L)中的任一時刻到達接收端.當同一時刻有多個字節同時到達時,這些字節可以任意排列.
問接收端可能收到多少種不同串? 并求出二進制最小的和最大的串.
按位DP, 關鍵是確定前i位至多能有多少個0/1,至少必須有多少個0/1. 此題與windy's abc很相似, 但多了處變化.
考慮 d=3, 原串為 1101011, 顯然第1個1永遠不可能跑到第2個0右邊. 字符串的錯位,本質上是某些1把它右邊d之內的0擠到左邊了. 因此對1, 它實際能向右移多少位,取決于它右邊d之內有多少個0.
這樣預處理后按位DP即可.
構造最小/最大數,只需盡量把1/0往低位扔就行了.

代碼:

  1 #include <iostream>
  2 #include <cstdio>
  3 #include <cstdlib>
  4 #include <cstring>
  5 #include <algorithm>
  6 #include <cmath>
  7 using namespace std;
  8 
  9 typedef unsigned long long ull;
 10 
 11 int mi[2][130], mx[2][130];
 12 ull dp[65][65];
 13 int b[65];
 14 int N,D;
 15 ull K;
 16 int CAS;
 17 
 18 void init()
 19 {
 20     int i,j,k;
 21     ull t;
 22     memset(b,0,sizeof(b));
 23     for(t=K, i=N; t; i--){
 24         b[i] = t&1;
 25         t>>=1;
 26     }
 27     int c[2][130];
 28     memset(c,0,sizeof(c));
 29     for(i=1; i<=N; i++)
 30         c[b[i]][i]++;
 31     for(i=N; i>=1; i--)
 32         c[0][i] += c[0][i+1], c[1][i] += c[1][i+1];
 33     memset(mi, 0sizeof(mi));
 34     memset(mx, 0sizeof(mx));
 35     for(i=1; i<=N; i++){
 36         mx[b[i]][ min(N, i+c[b[i]^1][i+1]-c[b[i]^1][i+D+1]) ] ++;
 37     }
 38     for(i=N; i>=1; i--){
 39         mx[0][i] += mx[0][i+1];
 40         mx[1][i] += mx[1][i+1];
 41         mi[0][i] = max(0, N+1-i-mx[1][i]);
 42         mi[1][i] = max(0, N+1-i-mx[0][i]);
 43     }
 44 }
 45 
 46 ull dodp()
 47 {
 48     int i,j,k,p;
 49     ull ret = 0;
 50     memset(dp,0,sizeof(dp));
 51     for(i=0; i<=N; i++)
 52         dp[N][i] = 1;
 53     for(p=N; p>=1; p--){
 54         for(i=mi[0][p]; i<=mx[0][p]; i++){
 55             j=N+1-p-i;
 56             if(j<mi[1][p] || j>mx[1][p]) continue;
 57             if(dp[p][i]==0)continue;
 58             if(p==1){ ret += dp[p][i]; continue; }
 59             dp[p-1][i] += dp[p][i];
 60             dp[p-1][i+1+= dp[p][i];
 61         }
 62     }
 63     return ret;
 64 }
 65 
 66 void getans(ull &xx, ull &ii)
 67 {
 68     int i,j,k;
 69     int c0[2][65],c1[2][65];
 70     memset(c0,0,sizeof(c0));
 71     memset(c1,0,sizeof(c1));
 72     for(i=1; i<=N; i++){
 73         if(b[i]==0)
 74             c0[0][i]++, c1[0][min(N,i+D)]++;
 75         else
 76             c1[1][i]++, c0[1][min(N,i+D)]++;
 77     }
 78     //for(i=1; i<=N; i++
 79     xx = ii = 0;
 80     for(i=1; i<=N; i++){
 81         while(c0[0][i]--) ii = (ii<<1);
 82         while(c0[1][i]--) ii = (ii<<1)|1;
 83         
 84         while(c1[1][i]--) xx = (xx<<1)|1;
 85         while(c1[0][i]--) xx = (xx<<1);
 86     }
 87 }
 88 
 89 void solve()
 90 {
 91     int i,j,k;
 92     printf("Case %d: "++CAS);
 93     printf("%llu ", dodp());
 94     ull xx,ii;
 95     getans(xx, ii);
 96     printf("%llu %llu\n", ii, xx);
 97 }
 98 
 99 int main()
100 {
101     CAS = 0;
102     while(scanf("%d",&N)!=EOF && N){
103         scanf("%d %llu",&D,&K);
104         init();
105         solve();
106     }
107 }
108 


posted on 2009-07-16 19:28 wolf5x 閱讀(288) 評論(0)  編輯 收藏 引用 所屬分類: acm_icpc
<2009年12月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

"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>
            亚洲日本激情| 亚洲电影免费观看高清完整版在线| 亚洲免费人成在线视频观看| 欧美影院在线| 亚洲三级电影全部在线观看高清| 午夜精品福利一区二区蜜股av| 亚洲日韩欧美一区二区在线| 欧美激情一区二区久久久| 亚洲最黄网站| 欧美激情亚洲综合一区| 欧美成人午夜激情| 136国产福利精品导航| 欧美日本国产| 亚洲精选成人| 亚洲国产精品成人精品| 欧美一区二区三区在| 欧美成人精品三级在线观看| 亚洲电影观看| 樱桃国产成人精品视频| 99精品视频免费| 免费亚洲电影在线| 免费观看成人| 亚洲欧美综合| 欧美日韩免费区域视频在线观看| 亚洲第一区色| 亚洲精品日产精品乱码不卡| 国产精品午夜在线| 亚洲免费在线精品一区| 欧美一区二区精品| 国产精品欧美在线| 在线成人av.com| 久久国产精品网站| 久久国产精品久久久| 亚洲激情一区二区三区| 亚洲欧美日韩综合国产aⅴ| 国产精品九九| 欧美一区二区视频免费观看| 久久久久免费观看| 亚洲一区999| 国产精品专区h在线观看| 性欧美暴力猛交69hd| 久久夜色撩人精品| 久久在线观看视频| 亚洲欧美日韩视频一区| 国产精品麻豆欧美日韩ww| 亚洲精品视频二区| 亚洲视频电影图片偷拍一区| 亚洲激情电影中文字幕| 麻豆精品视频在线观看| 在线日韩欧美视频| 免费观看成人| 久久成人国产精品| 国内精品久久久久伊人av| 亚洲二区在线视频| 欧美成人免费一级人片100| 99精品视频免费在线观看| 国产精品最新自拍| 久久精品国产清自在天天线| 蜜月aⅴ免费一区二区三区| 亚洲欧美综合另类中字| 国产日韩精品久久| 久热re这里精品视频在线6| 欧美一区二区三区视频免费播放| 亚洲视频狠狠| 国产一区激情| 欧美成人精品影院| 免费欧美在线视频| 久久综合九色综合网站| 日韩视频中午一区| 国产精品视频你懂的| 欧美 日韩 国产 一区| 欧美gay视频| 亚洲欧美综合国产精品一区| 欧美激情精品久久久久久变态| 精品成人国产| 亚洲第一色在线| 欧美日韩免费看| 久久午夜精品| 美国成人直播| 国产精品毛片a∨一区二区三区| 久久精品视频在线播放| 久久国产主播精品| 日韩亚洲欧美成人一区| 久久久欧美精品| 国产一区二区三区精品欧美日韩一区二区三区 | 国产日韩在线一区| 亚洲国产欧美另类丝袜| 亚洲图片在线| 一区二区三区av| 亚洲视频在线视频| 亚洲视频中文字幕| 亚洲国内欧美| 亚洲婷婷综合久久一本伊一区| 在线欧美福利| 国产午夜精品一区理论片飘花| 欧美伦理视频网站| 国产精品白丝jk黑袜喷水| 欧美国产日韩a欧美在线观看| 久久成人一区| 亚洲中字黄色| 久久午夜精品| 亚洲影音先锋| 亚洲手机成人高清视频| 亚洲午夜91| 亚洲高清视频一区| 欧美永久精品| 先锋影音久久久| 韩国v欧美v日本v亚洲v| 国产精品一区二区你懂的| 欧美精品尤物在线| 美女视频黄免费的久久| 久久久久久久久久久久久久一区| 亚洲午夜精品一区二区三区他趣| 久久精品国产亚洲高清剧情介绍| 亚洲欧美日韩精品久久| 亚洲天堂av电影| 亚洲午夜精品在线| 欧美一区二区大片| 久久精品国产免费| 午夜久久久久| 午夜综合激情| 欧美国产亚洲精品久久久8v| 欧美激情在线播放| 欧美国产先锋| 亚洲激情影院| 久久久久国产免费免费| 久久久久国产精品www | 亚洲成色最大综合在线| 国产日韩精品一区| 久久综合九色综合网站| 国产精品乱码一区二三区小蝌蚪 | 国产精品久久久久久久久免费| 久久久久国产精品人| 亚洲高清一二三区| 亚洲精选成人| 亚洲午夜在线观看| 亚洲欧美日本另类| 欧美日本在线观看| 欧美日韩久久精品| 欧美性大战久久久久久久蜜臀| 一本色道久久| 欧美成人免费在线视频| 国产综合久久| 亚洲国产精品一区二区第一页| 蜜桃av一区二区三区| 久久久免费精品视频| 国产精品久久久久天堂| 国产日韩成人精品| 国产一区二区日韩精品欧美精品| 欧美成人免费全部| 国产精品九色蝌蚪自拍| 国产精品少妇自拍| 亚洲国产精品激情在线观看| 一区二区三区国产精华| 亚洲免费在线电影| 性欧美在线看片a免费观看| 国产亚洲成av人在线观看导航| 制服丝袜亚洲播放| 亚洲欧美成人网| 欧美成人午夜免费视在线看片| 在线看片第一页欧美| 午夜一区二区三区在线观看| 欧美一区网站| 国产精品久久久久久久久婷婷| 国产精品伊人日日| 亚洲精品一区二区三区婷婷月| 亚洲国产精品一区在线观看不卡 | 香蕉乱码成人久久天堂爱免费| 久久久精品2019中文字幕神马| 久久香蕉精品| 国产日韩精品视频一区| 亚洲网友自拍| 久久av红桃一区二区小说| 欧美视频一区二区三区| 亚洲久久一区| 亚洲伊人一本大道中文字幕| 欧美日韩一区二区三区高清| 亚洲理论电影网| 中文日韩在线视频| 欧美亚洲成人免费| 中国女人久久久| 久久精品人人爽| 悠悠资源网久久精品| 国产欧美一区二区三区沐欲| 国产精品系列在线| 亚洲国产精品日韩| 亚洲综合导航| 欧美一区二区三区啪啪| 欧美偷拍一区二区| 另类尿喷潮videofree | 亚洲黄色影院| 亚洲午夜一区二区| 99热这里只有精品8| 欧美日韩国产成人在线| 亚洲精品一区在线观看| 久久嫩草精品久久久精品| 亚洲欧美日韩精品在线| 影音先锋中文字幕一区二区| 久久综合五月| 国产精品久久久久一区二区三区共|