多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > poj 2155 Matrix(樹狀數組的應用)

poj 2155 Matrix(樹狀數組的應用)

來源:程序員人生   發布時間:2014-10-03 08:00:01 閱讀次數:2989次

http://poj.org/problem?id=2155


對于一個n*n(n <= 1000)的01矩陣,初始全為0,有兩種操作。

C x1 y1 x2 y2 ,分別代表矩陣的左上角和右下角,將這個矩陣中的01互換,原為0的變為1,原為1的變為0。

Q x y詢問A[x,y]現在是幾。


因為只有01的互換,且原始為0,那么只需計算[x,y]處被換了幾次就能確定現在這個格子是幾。重點就是怎樣快速計算[x,y]格子被換了幾次。操作方法是將[x1,y1][x1,y2+1][x2+1,y1][x2+1,y2+1]格子出增加1,對于[x,y]只需求[1,1]到[x,y]的和就是[x,y]出被換了幾次。


若轉化成一維的,感覺和多校的一道題挺像,hdu 4970

詳解 


#include <stdio.h> #include <iostream> #include <map> #include <set> #include <bitset> #include <list> #include <stack> #include <vector> #include <math.h> #include <string.h> #include <queue> #include <string> #include <stdlib.h> #include <algorithm> #define LL __int64 //#define LL long long #define eps 1e-9 #define PI acos(-1.0) using namespace std; const int INF = 0x3f3f3f3f; const int mod = 10000007; int c[1010][1010]; int n,m; int Lowbit(int x) { return x&(-x); } void update(int x,int y, int add) { while(x <= n) { int tmp = y; while(tmp <= n) { c[x][tmp] += add; tmp += Lowbit(tmp); } x += Lowbit(x); } } int sum(int x, int y) { int s = 0; while(x >= 1) { int tmp = y; while(tmp >= 1) { s += c[x][tmp]; tmp -= Lowbit(tmp); } x -= Lowbit(x); } return s; } int main() { int test; int x1,y1,x2,y2; scanf("%d",&test); while(test--) { char ch[2]; memset(c,0,sizeof(c)); scanf("%d %d",&n,&m); while(m--) { scanf("%s",ch); if(ch[0] == 'C') { scanf("%d %d %d %d",&x1,&y1,&x2,&y2); update(x1,y1,1); update(x1,y2+1,1); update(x2+1,y1,1); update(x2+1,y2+1,1); } else { scanf("%d %d",&x1,&y1); int s = sum(x1,y1); if(s&1) printf("1 "); else printf("0 "); } } printf(" "); } return 0; }


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲成a人片在线观看精品 亚洲成a人片在线观看尤物 | jlzzjlzz欧美大全 | 国产精品久久久久久久毛片 | 欧美日韩欧美日韩 | 欧美自拍视频在线 | 国产亚洲欧美日韩国产片 | 日本成片视频 | 特级淫片aaaaa片毛片 | 国产久7精品视频 | 亚洲精品影院久久久久久 | 午夜影院网站 | jizzjizz免费大全 | 日本xxxxx久色视频在线观看 | 伊人免费在线观看 | www.xxxx欧美| 日韩中文一区 | 欧美日韩高清不卡一区二区三区 | 可以免费观看欧美一级毛片 | 日本成人性视频 | 日韩视频一区二区三区 | 亚洲 中文 欧美 日韩 在线人 | 高清中文字幕免费观在线 | 黑人性xxx | 亚洲欧洲国产精品久久 | 亚洲天堂伦理 | 亚洲中字| 久久精品毛片 | 免费看叼嘿视频 | 亚洲色图日韩 | 视频一区 国产 | 在线视频精品播放 | 精品欧美成人高清在线观看2021 | 中文字幕免费观看 | 欧美一区二区三区大片 | 成人gav| 日韩欧美精品一区二区三区 | 伊人情人综合成人久久网小说 | 亚洲一区二区三区高清 不卡 | 日本免费一区二区三区看片 | a级午夜 | 午夜三级三级三点在线 |