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

C++分析研究  
C++
日歷
<2010年2月>
31123456
78910111213
14151617181920
21222324252627
28123456
78910111213
統計
  • 隨筆 - 92
  • 文章 - 4
  • 評論 - 4
  • 引用 - 0

導航

常用鏈接

留言簿

隨筆檔案

文章檔案

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

 

  題意:區間交、并、減、補

  思路:用線段樹的葉子節點記錄該點是否被區間覆蓋,因為有開區間的情況,因此考慮離散,將數值乘以2。

  U:把區間[l,r]覆蓋成1

  I:把[-∞,l)(r,∞]覆蓋成0

  D:把區間[l,r]覆蓋成0

  C:把[-∞,l)(r,∞]覆蓋成0 , 且[l,r]區間0/1互換

  S:[l,r]區間0/1互換

  區間修改容易做,但是加上區間異或就難了。

  我們考慮維護這樣一棵線段樹,如果區段的setv不是-1(初始化時候為-1),則說明該節點所對應的區段內全部的值為setv,如果根節點和子節點的setv值都不為-1,我們只認根節點上面的setv值。然后維護一個xorv值,表示該節點對應區段是否被異或奇數次(異或偶數次和沒異或一樣,是0)。這個xorv值一定出現在查找時第一次遇到setv值的前面,也就是說,查找時會先遇到有意義的xorv值,再遇到有意義的setv值(有意義是指,xorv=1,或者setv!=-1)。當要修改某個區段或尋找某個區段的過程中,xorv值和setv值會用pushdown不斷往下壓。明顯我們可以知道這個性質:當一個區間被覆蓋后,不管之前有沒有異或標記都沒有意義了。所以當一個節點得到覆蓋標記時把異或標記清空托福答案

  而當一個節點得到異或標記的時候,先判斷覆蓋標記,如果是0或1,直接改變一下覆蓋標記,不然的話改變異或標記托福改分

  輸出的時候,我們可以用一個hash數組記錄,用一個query將線段樹上的值往下壓到hash數組里面。

  注意幾個問題:1.出現0的情況

  2.(3,3)這種空集的情況

  #include<cstdio>

  #include<cstring>

  #define M ((L+R)>>1)

  #define ls (o<<1)

  #define rs (o<<1|1)

  #define lson ls,L,M

  #define rson rs,M+1,R

  const int maxn=66666*2;

  bool hash[maxn],empty=1,flag=0;

  int n,yl,yr,v,setv[maxn*4],xorv[maxn*4],a,b,low=0,high;

  char op,left,right;

  void fxor(int o) {if(setv[o]>=0) setv[o]^=1; else xorv[o]^=1;}

  void pushdown(int o)

  {

  if(setv[o]>=0) {setv[ls]=setv[rs]=setv[o];xorv[ls]=xorv[rs]=0;setv[o]=-1;}

  if(xorv[o])

  {

  fxor(ls);

  fxor(rs);

  xorv[o]=0;

  }

  }

  void setupdate(int o,int L,int R)

  {

  if(yl<=L && R<=yr) {xorv[o]=0;setv[o]=v;return;}

  pushdown(o);

  if(yl<=M) setupdate(lson);

  if(M<yr) setupdate(rson);

  }

  void xorupdate(int o,int L,int R)

  {

  if(yl<=L && R<=yr){fxor(o);return;}

  pushdown(o);

  if(yl<=M) xorupdate(lson);

  if(M<yr) xorupdate(rson);

  }

  void query(int o,int L,int R)

  {

  if(setv[o]>=0)

  {

  if(setv[o]) for(int i=L;i<=R;++i) hash[i]=1;//將信息壓倒hash里面去

  return;

  }

  pushdown(o);

  if(yl<=M) query(lson);

  if(M<yr) query(rson);

  }

  void init()

  {

  memset(setv,-1,sizeof(setv));

  memset(hash,0,sizeof(hash));

  xorv[1]=setv[1]=0;

  }

  void read()

  {

  while(~scanf("%c %c%d,%d%c ",&op,&left,&a,&b,&right))

  {

  a=(a+1)*2,b=(b+1)*2;

  if(left=='(') ++a; if(right==')') --b;

  if(op=='U')

  {

  v=1,yl=a,yr=b;

  if(yl<=yr) setupdate(1,1,maxn-1);

  }

  else if(op=='I')

  {

  v=0,yl=1,yr=a-1;

  if(yl<=yr) setupdate(1,1,maxn-1);

  yl=b+1,yr=maxn-1;

  if(yl<=yr) setupdate(1,1,maxn-1);

  }

  else if(op=='D')

  {

  v=0,yl=a,yr=b;

  if(yl<=yr) setupdate(1,1,maxn-1);

  }

  else if(op=='C')

  {

  v=0,yl=1,yr=a-1;

  if(yl<=yr) setupdate(1,1,maxn-1);

  yl=b+1,yr=maxn-1;

  if(yl<=yr) setupdate(1,1,maxn-1);

  yl=a,yr=b;

  if(yl<=yr) xorupdate(1,1,maxn-1);

  }

  else if(op=='S')

  {

  yl=a,yr=b;

  if(yl<=yr) xorupdate(1,1,maxn-1);

  }

  }

  }

  void print()

  {

  yl=1,yr=maxn-1;

  query(1,1,maxn-1);

  while(low<maxn)

  {

  while(!hash[low] && low<maxn) ++low;

  high=low+1;

  while(hash[high] && high<maxn) ++high;

  --high;

  if(low>=maxn) break;

  empty=0;

  if(flag) printf(" ");

  flag=1;

  if(low&1) printf("(");

  else printf("[");

  printf("%d,%d",(low/2)-1,(high-1)/2);

  if(high&1) printf(")");

  else printf("]");

  low=high+1;

  }

  if(empty) printf("empty set");

  puts("");

  }

  int main()

  {

  init();

  read();

  print();

  return 0;

  }

 

posted on 2013-09-03 00:21 HAOSOLA 閱讀(411) 評論(0)  編輯 收藏 引用
 
Copyright © HAOSOLA Powered by: 博客園 模板提供:滬江博客
PK10開獎 PK10開獎
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲国产精品t66y| 一区二区三区精品| 蜜桃av久久久亚洲精品| 久久精品国产一区二区三区免费看| 一本一本久久| 亚洲一区二区三区激情| 亚洲欧美在线观看| 久久精品一区二区三区不卡| 久久久久一区二区三区四区| 久热爱精品视频线路一| 欧美精品导航| 国产精品一区二区久久精品| 国产一区二区欧美| 亚洲第一久久影院| 亚洲视频电影在线| 久久精品伊人| 亚洲国产乱码最新视频| 亚洲图色在线| 久久一日本道色综合久久| 欧美激情女人20p| 国产精品影片在线观看| 亚洲国产第一页| 亚洲欧美中文另类| 农村妇女精品| 亚洲一区二三| 欧美大片91| 国产综合自拍| 亚洲影视在线播放| 欧美激情精品久久久| 亚洲女人天堂成人av在线| 免费成人高清在线视频| 国产精品网站在线| 99re6热在线精品视频播放速度| 欧美一区二区视频网站| 亚洲欧洲在线视频| 久久精品在线观看| 国产精品久久久久7777婷婷| 亚洲日本在线视频观看| 久久久青草青青国产亚洲免观| 日韩视频一区二区三区在线播放| 久久久久久久久岛国免费| 国产精品免费网站| 亚洲一区bb| 亚洲另类自拍| 欧美精品入口| 亚洲精品久久久久久下一站| 久久亚洲高清| 午夜免费在线观看精品视频| 欧美午夜在线一二页| 亚洲精品一区二区三区蜜桃久| 久久一区亚洲| 久久久青草婷婷精品综合日韩 | 亚洲亚洲精品在线观看| 欧美国产第一页| 1024成人网色www| 久久亚洲综合网| 久久国产精品久久国产精品| 国产欧美精品一区aⅴ影院| 亚洲欧美一级二级三级| 亚洲小视频在线| 国产精品看片你懂得| 亚洲欧美视频| 香蕉乱码成人久久天堂爱免费 | 蜜桃av久久久亚洲精品| 亚洲成在人线av| 蜜桃av一区二区三区| 麻豆成人综合网| 亚洲理论电影网| 亚洲精品一区中文| 欧美色中文字幕| 校园激情久久| 久久久精品午夜少妇| 亚洲高清资源| 亚洲三级色网| 国产精品视频精品| 久久免费精品日本久久中文字幕| 久久精品2019中文字幕| 尤物精品在线| 亚洲麻豆视频| 国产日韩欧美中文| 另类成人小视频在线| 欧美激情欧美激情在线五月| 亚洲欧美另类在线观看| 久久精品夜色噜噜亚洲aⅴ| 亚洲精品国产欧美| 亚洲婷婷免费| 在线 亚洲欧美在线综合一区| 亚洲风情亚aⅴ在线发布| 欧美日韩情趣电影| 久久成人免费视频| 欧美国产精品久久| 性刺激综合网| 麻豆精品一区二区av白丝在线| 一本一本久久a久久精品综合妖精| 中文日韩电影网站| 亚洲国产老妈| 亚洲欧美精品一区| 亚洲免费观看高清完整版在线观看| 亚洲性线免费观看视频成熟| 亚洲高清视频中文字幕| 亚洲一区二区三区免费视频| **性色生活片久久毛片| 亚洲一区二区三区午夜| 亚洲精品国产精品久久清纯直播| 亚洲欧美日韩国产成人| 日韩午夜剧场| 久久精品一区四区| 欧美亚洲系列| 欧美日韩国产一区二区三区| 久热精品视频在线| 国产欧美一区二区精品秋霞影院| 欧美在线二区| 欧美日韩理论| 亚洲国产精品免费| 国产一区二区三区不卡在线观看| 亚洲精品中文字幕在线观看| 亚洲第一黄色网| 久久精品国产清自在天天线| 亚洲欧美999| 欧美日韩国产综合一区二区| 男男成人高潮片免费网站| 国产一区二区| 亚洲欧美韩国| 亚洲欧美色婷婷| 欧美日韩国产系列| 91久久精品日日躁夜夜躁国产| 尤物九九久久国产精品的特点 | 欧美连裤袜在线视频| 免费在线成人| 在线看成人片| 久热精品在线| 欧美二区在线观看| 亚洲国产导航| 免费亚洲电影在线| 欧美大香线蕉线伊人久久国产精品| 合欧美一区二区三区| 欧美在线免费观看视频| 久久精品一区二区三区不卡| 国内精品伊人久久久久av影院| 午夜日韩福利| 久久亚洲图片| 亚洲大片在线| 欧美成人在线免费观看| 日韩视频在线播放| 亚洲一级免费视频| 国产麻豆成人精品| 久久精品国产亚洲一区二区| 老司机精品福利视频| 亚洲国产另类久久精品| 欧美日韩国产亚洲一区| 亚洲一区三区在线观看| 久久久久一区二区三区| 在线国产日韩| 欧美日韩国产精品一区二区亚洲 | 另类春色校园亚洲| 91久久久一线二线三线品牌| 欧美激情精品久久久久久蜜臀 | 久久婷婷国产综合国色天香| 在线成人欧美| 欧美日韩亚洲91| 亚洲欧美经典视频| 欧美aⅴ一区二区三区视频| 亚洲精品乱码久久久久久蜜桃麻豆 | 男男成人高潮片免费网站| 亚洲区欧美区| 国产精品每日更新| 久久免费国产精品| 亚洲久久成人| 久久久九九九九| 99re热这里只有精品免费视频| 国产精品免费一区二区三区在线观看 | 欧美激情91| 亚洲综合色在线| 嫩草成人www欧美| 亚洲欧美国产高清va在线播| 在线观看一区| 国产嫩草影院久久久久| 欧美成人午夜| 久久aⅴ国产紧身牛仔裤| 91久久精品美女| 久久久精品免费视频| 一本大道久久a久久精品综合| 国产日韩在线播放| 欧美性大战久久久久久久| 美女网站在线免费欧美精品| 亚洲女女做受ⅹxx高潮| 亚洲精品视频免费观看| 久热综合在线亚洲精品| 亚洲夜晚福利在线观看| 亚洲日本精品国产第一区| 国产在线一区二区三区四区 | 一本色道久久| 欧美激情在线播放| 久久久综合精品| 亚洲欧美另类久久久精品2019| 亚洲国产日韩欧美在线动漫| 国产一区二区三区四区五区美女| 欧美日韩一区二区在线观看| 欧美激情一区二区三区成人| 久久婷婷国产麻豆91天堂|