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

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
<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

"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>
            在线免费观看一区二区三区| 欧美一区二区精品久久911| 久久九九精品| 在线看国产日韩| 亚洲美女精品成人在线视频| 国产精品综合视频| 欧美jizzhd精品欧美喷水| 欧美日韩在线一区| 老司机精品福利视频| 欧美日韩视频第一区| 久久久久久一区| 欧美日韩精品中文字幕| 久久人人爽国产| 国产精品99免费看| 欧美不卡激情三级在线观看| 国产精品亚洲一区二区三区在线| 欧美激情片在线观看| 国产欧美精品一区aⅴ影院| 亚洲国产精品久久久| 国产日韩久久| 亚洲欧洲一区| 影音先锋国产精品| 亚洲男人的天堂在线观看| 亚洲精品国产精品国自产观看| 亚洲专区免费| 亚洲永久网站| 欧美另类videos死尸| 美女主播精品视频一二三四| 国产精品爽黄69| 在线亚洲免费视频| 亚洲精品日韩在线| 久久亚洲一区二区三区四区| 久久精品国产77777蜜臀| 欧美三日本三级三级在线播放| 欧美国产日韩在线| 亚洲高清在线| 久久久久久久一区| 久久亚洲精品中文字幕冲田杏梨| 国产精品入口尤物| 亚洲午夜精品一区二区| 亚洲一区二区三区免费在线观看| 欧美日韩国产三区| 亚洲免费观看视频| 99精品视频免费观看视频| 欧美大片免费| 亚洲破处大片| 一区二区三区精品视频| 欧美欧美全黄| 99成人在线| 亚洲欧美高清| 国产精品亚洲一区| 性欧美精品高清| 久久国产婷婷国产香蕉| 亚洲午夜伦理| 午夜精品久久久久久久| 国产精品成人一区二区| 亚洲视频网在线直播| 午夜精品国产| 国产欧美亚洲视频| 久久精品综合| 亚洲国产成人porn| 一区二区三区免费观看| 国产精品国产三级国产a| 亚洲女人天堂成人av在线| 久久电影一区| 精品av久久707| 久久一区免费| 亚洲精品你懂的| 亚洲欧美中日韩| 国内精品视频在线播放| 美女国产精品| 99视频在线观看一区三区| 亚洲欧美制服中文字幕| 红桃视频成人| 欧美日韩国产不卡| 亚洲欧美视频| 欧美国产一区二区| 亚洲一区二区免费视频| 激情欧美日韩一区| 欧美精品七区| 午夜日本精品| 亚洲激情网址| 欧美在线一区二区| 亚洲精品美女在线观看播放| 欧美色精品天天在线观看视频| 午夜精品久久久久久| 亚洲高清视频在线观看| 亚洲欧美经典视频| 亚洲第一区在线观看| 欧美日韩另类综合| 欧美一区二区三区喷汁尤物| 欧美激情2020午夜免费观看| 亚洲一区网站| 亚洲狠狠婷婷| 国产日韩精品在线观看| 欧美久久久久久久久久| 欧美在线电影| av成人福利| 欧美成人自拍| 欧美亚洲视频一区二区| 亚洲日本一区二区三区| 国产精品永久免费在线| 欧美成人精品福利| 亚洲欧美日韩一区二区在线| 亚洲国产成人91精品| 久久久久一区| 亚洲欧美成人综合| 亚洲精品一区二区三区蜜桃久| 国产亚洲美州欧州综合国| 欧美日韩一区不卡| 麻豆av一区二区三区久久| 亚洲欧美日韩国产一区| 亚洲精品在线一区二区| 欧美成熟视频| 久久午夜精品一区二区| 亚洲综合色视频| 亚洲视频1区| 91久久综合| 亚洲国产成人高清精品| 国产在线观看91精品一区| 欧美午夜宅男影院在线观看| 欧美黄色一区| 欧美成人亚洲| 狼人社综合社区| 久久精品免费| 久久国产精品毛片| 欧美一级视频免费在线观看| 亚洲中午字幕| 亚洲欧美日韩国产中文在线| 国产精品狠色婷| 欧美久久久久| 欧美激情中文不卡| 免费不卡在线观看av| 久久精品免费电影| 欧美一区二区在线观看| 亚洲一区在线视频| 亚洲图片在线| 亚洲综合国产| 欧美一区二区精品| 久久精品国产综合精品| 久久精品99无色码中文字幕| 久久精品国产综合| 老司机免费视频久久| 欧美不卡视频一区| 欧美黄色网络| 欧美偷拍另类| 国产日产欧美精品| 精品999在线观看| 亚洲国产精品久久久久婷婷884| 亚洲大胆在线| 一区二区三区四区国产| 亚洲欧美综合另类中字| 久久精品一区二区三区不卡牛牛 | 一区二区三区产品免费精品久久75 | 亚洲欧美日韩电影| 午夜宅男久久久| 久久久久久久久一区二区| 麻豆精品精华液| 欧美日韩另类丝袜其他| 欧美亚洲成人精品| 国产在线不卡精品| 亚洲国产欧美在线人成| 99视频精品免费观看| 亚洲欧美日韩一区| 久久青青草原一区二区| 91久久精品国产| 亚洲一区二区三区中文字幕 | 亚洲欧美另类久久久精品2019| 午夜精品久久久久久久久久久久| 久久精品国产在热久久| 亚洲成人在线免费| 亚洲精品久久久久久一区二区| 中文在线资源观看视频网站免费不卡| 亚洲一区二区三区在线播放| 久久久久久网址| 欧美日韩国产小视频| 国产亚洲高清视频| 亚洲区在线播放| 先锋亚洲精品| 亚洲第一精品夜夜躁人人爽 | 亚洲视屏在线播放| 久久精品国产v日韩v亚洲| 亚洲大胆av| 午夜电影亚洲| 欧美片在线观看| 精品不卡一区二区三区| 亚洲一区二区免费| 亚洲国产成人在线播放| 午夜精品久久久久| 欧美日韩久久| 亚洲国产欧美在线人成| 欧美资源在线观看| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲欧美色婷婷| 欧美日韩mv| 亚洲黄页视频免费观看| 久久激情一区| 亚洲视频精选| 亚洲与欧洲av电影| 欧美激情bt|