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

vijos1664 真-資源勘探題解

Posted on 2009-10-06 12:28 hyf 閱讀(446) 評論(2)  編輯 收藏 引用 所屬分類: OI
    這是道怨念題,交了5次都等不到puppy,更詭異的是vj上顯示的是ac……
    題目的大意是給出n*m的矩陣,詢問(1,1)->(x,y)的子矩陣中只出現(xiàn)一次的元素個數(shù)
    對于第i行來說,記錄1->i行內元素x最小和次小的橫坐標x0、x1,那么在該行內將元素x記錄進去的子矩陣只能是左下坐標在x0到(x1-1)之間的。
    所以按行i掃描,維護(1,1)->(i,x)子矩陣的稀有資源個數(shù),也就是對于在本行內出現(xiàn)的元素算出其新的區(qū)間[x0,x1),原區(qū)間全部減1,新區(qū)間加1,在該行沒有出現(xiàn)的元素不變。
    區(qū)間整體修改可以用線段樹來維護,但是此題用線段樹T的可能性相當大,注意到這里是維護區(qū)間詢問點,所以可以把樹狀數(shù)組逆向運用,這樣常數(shù)大大降低。
    最終復雜度是O(n^2logn),C++還要進行輸入優(yōu)化。

囧代碼:
  1 #include <iostream>
  2 using namespace std;
  3 #define LOWBIT(x) (x&(-x))
  4 
  5 int n,m;
  6 int data[1100][1100];
  7 int r[2000000];
  8 int pre[2000000][2];
  9 int hash[2000000][2= {0};
 10 int ans = 0;
 11 int A[1101= {0};
 12 char s[10000];
 13 
 14 void Modify(int x, int c)
 15 {
 16     while(x)
 17     {
 18         A[x] += c;
 19         x -= LOWBIT(x);
 20     }
 21 }
 22 
 23 int Get(int x)
 24 {
 25     int ans = 0;
 26     while(x<=m)
 27     {
 28         ans += A[x];
 29         x += LOWBIT(x);
 30     }
 31     return ans;
 32 }
 33 
 34 void init()
 35 {
 36     int tmp, p;
 37     char *ptr;
 38     scanf("%d %d\n",&n,&m);
 39     for(int i = 0; i < n; i++)
 40     {
 41         gets(s);
 42         p = tmp = 0;
 43         ptr = s;
 44         while(*ptr)
 45         {
 46             if((*ptr)==' ')
 47                 data[i][p++= tmp, tmp = 0;
 48             else
 49                 tmp *= 10, tmp += (*ptr)-'0';
 50             ptr++;
 51         }
 52         data[i][p] = tmp;
 53     }
 54     for(int i = 0; i <= n*m; i++)
 55         hash[i][0= hash[i][1= m, pre[i][0= pre[i][1= m, r[i] = -1;
 56 }
 57 
 58 void solve()
 59 {
 60     int tmp = 0;
 61     for(int i = 0; i < n; i++)
 62     {
 63         for(int j = 0; j < m; j++)
 64         {
 65             tmp = data[i][j];
 66             pre[tmp][0= hash[tmp][0], pre[tmp][1= hash[tmp][1];
 67         }
 68         for(int j = 0; j < m; j++)
 69         {
 70             tmp = data[i][j];
 71             if(j<pre[tmp][0])
 72                 pre[tmp][1= pre[tmp][0], pre[tmp][0= j;
 73             else if(j<pre[tmp][1])
 74                 pre[tmp][1= j;
 75         }
 76         for(int j = 0; j < m; j++)
 77         {
 78             tmp = data[i][j];
 79             if(r[tmp]!=i)
 80             {
 81                 Modify(hash[tmp][1],-1);
 82                 Modify(hash[tmp][0],1);
 83                 Modify(pre[tmp][1],1);
 84                 Modify(pre[tmp][0],-1);
 85                 hash[tmp][0= pre[tmp][0], hash[tmp][1= pre[tmp][1];
 86                 r[tmp] = i;
 87             }
 88         }
 89         for(int j = 1; j <= m; j++)
 90             tmp = Get(j), ans ^= tmp;
 91     }       
 92 }
 93 
 94 void print()
 95 {
 96     printf("%d\n",ans);
 97 }
 98 
 99 int main(void)
100 {
101     init();
102     solve();
103     print();
104     return 0;
105 }

   

Feedback

# re: vijos1664 真-資源勘探題解[未登錄]  回復  更多評論   

2009-10-06 21:35 by Tim
orz?
ORZ!

# re: vijos1664 真-資源勘探題解[未登錄]  回復  更多評論   

2009-11-27 08:32 by SonicMisora
ORZ!

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            美女脱光内衣内裤视频久久影院| 99在线观看免费视频精品观看| 亚洲精品一区二区三区在线观看| 欧美一区二区三区免费观看视频| 欧美经典一区二区三区| 国模叶桐国产精品一区| 中文在线资源观看网站视频免费不卡| 美女精品国产| 午夜亚洲一区| 国产精品久久久久久久电影 | 欧美高清在线视频| 黑人巨大精品欧美一区二区| 亚洲欧美视频| 日韩网站在线观看| 蘑菇福利视频一区播放| 狠狠色狠狠色综合日日小说| 午夜老司机精品| 一区二区三区四区国产精品| 久久综合五月| 黄色精品一二区| 久久精品导航| 亚洲欧美中文字幕| 国产精品丝袜白浆摸在线| 亚洲桃花岛网站| 亚洲日本中文字幕区| 麻豆精品在线视频| 在线播放中文一区| 久久夜色精品国产亚洲aⅴ| 午夜亚洲视频| 国产日韩欧美另类| 欧美影院成人| 午夜久久一区| 国产夜色精品一区二区av| 欧美一区二区黄| 亚洲综合二区| 国产精品网站在线观看| 欧美一区二区三区免费在线看 | 亚洲影院污污.| 日韩网站在线| 欧美亚洲成人免费| 亚洲欧美国产77777| 宅男噜噜噜66一区二区66| 欧美日韩在线一区二区| 亚洲综合色噜噜狠狠| 亚洲午夜激情| 国产精品一区二区在线| 欧美一区观看| 久久精品久久99精品久久| 一区福利视频| 欧美激情在线播放| 欧美乱人伦中文字幕在线| 一本色道88久久加勒比精品| 亚洲精品免费观看| 欧美色欧美亚洲高清在线视频| 一区二区三区四区精品| 洋洋av久久久久久久一区| 国产精品女同互慰在线看| 欧美专区日韩专区| 久久国产精品久久久久久久久久| 激情婷婷亚洲| 欧美激情第五页| 欧美日韩无遮挡| 亚洲综合精品四区| 午夜精品免费在线| 激情综合在线| 亚洲国产欧美精品| 欧美视频日韩| 久久国产精品72免费观看| 久久精品女人天堂| 亚洲精品久久7777| 一区二区三区.www| 国产视频欧美视频| 欧美激情 亚洲a∨综合| 欧美日韩美女| 久久se精品一区二区| 久久久之久亚州精品露出| 亚洲精品一二三区| 亚洲午夜女主播在线直播| 黄色成人在线免费| 亚洲高清123| 国产精品久久久久久av福利软件 | 欧美资源在线| 日韩视频精品在线| 亚洲一区精彩视频| 在线精品视频在线观看高清 | 欧美日韩精品在线视频| 羞羞答答国产精品www一本 | 亚洲欧美日产图| 亚洲国产欧美一区二区三区久久 | 国产精品日韩久久久久| 久久久国产91| 欧美乱人伦中文字幕在线| 久久国产精品99国产| 免费一级欧美片在线播放| 亚洲欧美日韩国产一区二区三区| 久久久久久久激情视频| 中文欧美日韩| 久久成人久久爱| 一区二区三区欧美在线| 久久精品人人做人人综合 | 中国女人久久久| 在线日韩成人| 亚洲男女自偷自拍图片另类| 亚洲精品久久久久久久久久久久久 | 国产欧美一区二区三区久久人妖| 亚洲大片一区二区三区| 国产精品亚洲精品| 亚洲激情第一区| 韩国精品久久久999| 一本大道久久a久久精品综合| 好吊成人免视频| 亚洲视频 欧洲视频| 亚洲国产一区在线观看| 欧美一区高清| 亚洲一区二区成人| 久久天天躁狠狠躁夜夜av| 亚洲在线观看免费| 开元免费观看欧美电视剧网站| 性欧美1819性猛交| 欧美激情一区二区三区在线视频| 久久精品国产免费| 欧美调教视频| 亚洲成在线观看| 午夜精品视频在线| 麻豆九一精品爱看视频在线观看免费| 香蕉久久精品日日躁夜夜躁| 欧美国产亚洲精品久久久8v| 久久久午夜视频| 国产精品高潮在线| 亚洲国产小视频| 一区精品在线| 欧美伊人精品成人久久综合97| 亚洲香蕉在线观看| 欧美精品成人| 欧美高清不卡| 国内外成人在线| 亚洲尤物视频在线| 亚洲色图综合久久| 欧美激情一区二区| 欧美成熟视频| 精久久久久久| 久久www免费人成看片高清 | 亚洲一区二区精品| 亚洲最新中文字幕| 男人的天堂亚洲在线| 毛片基地黄久久久久久天堂| 国产亚洲一区精品| 午夜精品久久久久久久99水蜜桃 | 久久精品一区二区三区四区| 国产精品vvv| 亚洲精一区二区三区| 亚洲人成在线观看网站高清| 久久精品一区二区三区中文字幕| 久久精品视频在线播放| 国产美女诱惑一区二区| 亚洲网站在线| 午夜精品免费| 国产精品尤物| 亚洲欧美成人| 欧美影院视频| 国产视频在线观看一区二区| 亚洲欧美日韩中文视频| 欧美一级黄色网| 国产精品一区二区在线观看| 亚洲一区一卡| 久久国产福利国产秒拍| 国产在线精品二区| 久久国产精品黑丝| 另类激情亚洲| 在线日本成人| 免费在线成人av| 91久久精品国产91性色tv| 日韩视频中文字幕| 欧美日产一区二区三区在线观看| 亚洲美女精品成人在线视频| 中文av字幕一区| 国产精品日产欧美久久久久| 午夜亚洲福利在线老司机| 久久婷婷影院| 亚洲国产日韩一区二区| 欧美激情成人在线| 99国产精品久久久久久久成人热| 亚洲一二三级电影| 国产女主播一区| 久久精品中文字幕一区| 欧美激情视频给我| 在线视频精品一| 国产精品久久久久久久久久直播| 亚洲欧美日韩视频二区| 麻豆亚洲精品| 99精品热视频只有精品10| 国产精品不卡在线| 欧美在线视频免费观看| 免费在线国产精品| 亚洲毛片在线| 国产精品久久久久久妇女6080 | 91久久综合亚洲鲁鲁五月天| 欧美日韩高清区| 一区二区三区精密机械公司 | 亚洲大片精品永久免费|