日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2020ICPC·小米 网络选拔赛第一场(Matrix Subtraction (二维差分))

發布時間:2024/1/8 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2020ICPC·小米 网络选拔赛第一场(Matrix Subtraction (二维差分)) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目傳送門

Matrix Subtraction

題目大意

給你一個 n × m n×m n×m的矩陣,每次可從矩陣中選擇一個大小為 a × b a×b a×b的矩陣,使得該子矩陣的值全部減一
求最后能否使得整個矩陣值全部減為0

前置知識點

二維差分維護區間修改,復雜度 O ( n m ) O(nm) O(nm)

思路

采取差分矩陣存儲矩陣
從左上開始遍歷矩陣,
若當前位置的值不為0,則以當前位置為子矩陣的左上角開始構建子矩陣,子矩陣所有值減去當前位置的值
若有操作使得當前位置的值小于0,則無法使得整個矩陣值全為0
若當前位置的值不為0,并且無法以當前位置為子矩陣左上角構建子矩陣則無法使得整個矩陣值全為0

AC Code

#pragma GCC optimize("-Ofast","-funroll-all-loops") #include<cstdio> #include<algorithm> #include<iostream> #include<cstring> #include<math.h> using namespace std; #define endl '\n' #define INF 0x3f3f3f3f #define int long long #define debug(a) cout<<#a<<"="<<a<<endl; // #define TDS_ACM_LOCAL typedef long long ll; const double PI=acos(-1.0); const double e=exp(1.0); const int M=1e9+7; const int N=1009; inline int mymax(int x,int y){return x>y?x:y;} inline int mymin(int x,int y){return x<y?x:y;} inline int read(){int x=0, f=0;char ch=getchar();while(ch<'0'||ch>'9') f|=ch=='-',ch=getchar();while(ch>='0'&&ch<='9') x=(x<<3)+(x<<1)+(ch^48),ch=getchar();return f?-x:x; } inline void write(int x){ if(x < 0) {putchar('-');x = -x;} if(x > 9) write(x/10);putchar(x % 10 + '0'); } int n, m, a, b; long long x[N][N], d[N][N]; // 二維差分的區間修改 void add(int x, int y, int a, int b, int v){d[x][y]+=v;d[x+a][y+b]+=v;d[x+a][y]-=v;d[x][y+b]-=v; }void solve(){memset(d,0,sizeof(d));n=read(); m=read(); a=read(); b=read();for(int i=1; i<=n; i++){for(int j=1; j<=m; j++){x[i][j]=read();d[i][j]=x[i][j]-x[i-1][j]-x[i][j-1]+x[i-1][j-1];// 構造差分矩陣// add(i,j,1,1,x[i][j]);}}int flag=0;for(int i=1; i<=n && !flag; i++){for(int j=1; j<=m && !flag; j++){// 從左上開始求得當前位置的值d[i][j]=d[i][j]+d[i-1][j]+d[i][j-1]-d[i-1][j-1];if(d[i][j]!=0){if(d[i][j]<0) flag=1;else{if(i+1-1>n || j+b-1>m) flag=1;else add(i,j,a,b,-d[i][j]); // 將當前位置的值全部減去(區間減法)}}}}if(flag) cout<<"QAQ"<<endl;else cout<<"^_^"<<endl;return ; }signed main(){ios::sync_with_stdio(false);cin.tie(0), cout.tie(0); #ifdef TDS_ACM_LOCALfreopen("D:\\VS code\\.vscode\\testall\\in.txt", "r", stdin);freopen("D:\\VS code\\.vscode\\testall\\out.txt", "w", stdout); #endifint T;T=read();while(T--) solve();return 0; }

總結

以上是生活随笔為你收集整理的2020ICPC·小米 网络选拔赛第一场(Matrix Subtraction (二维差分))的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 伊人中文字幕 | 尤物网在线 | 深喉口爆一区二区三区 | 北京富婆泄欲对白 | 在线观看污污网站 | 狠狠澡 | 久久国产精品影院 | 国产欧美日韩在线播放 | 黄色在线免费观看网站 | 国产一区欧美日韩 | 孕妇疯狂做爰xxxⅹ 国产精品乱码久久久久久 99久久久成人国产精品 | 五月天婷婷色综合 | 亚洲精品乱码久久久久久蜜桃动漫 | 亚洲一区二区三区电影在线观看 | 久久精品国产亚洲av嫖农村妇女 | 国产日b视频 | 国产精品人人妻人人爽人人牛 | 日本一二三区视频在线 | 欧美极品jizzhd欧美仙踪林 | 成人试看120秒体验区 | 深夜福利一区二区三区 | 蜜乳av一区二区 | 国产福利二区 | 91精品一区二区三区在线观看 | 欧美黄色录像视频 | 在线天堂中文 | 日韩精品一区二区三区高清免费 | 豆豆色成人网 | 国产精品久久久久久久久久东京 | 在线观看色视频 | 天堂在线v | 久草手机在线视频 | 老司机午夜免费视频 | 永久在线观看 | 97成人在线视频 | 超碰在线伊人 | 先锋资源中文字幕 | 成人精品网址 | 女生扒开腿让男生操 | 秋霞综合网 | 97超碰在线免费 | 中文字幕久久精品 | 一级性生活黄色片 | 91看片免费看 | 中文字幕一区二区人妻电影 | 深夜影院深a | 男女av网站 | 神马久久av| 色婷婷久久五月综合成人 | 麻豆综合 | 日韩大片在线免费观看 | 欧美一级片免费 | 欧美一区二区三区在线免费观看 | 人妻aⅴ无码一区二区三区 阿v免费视频 | 国产一伦一伦一伦 | 在线免费观看不卡av | 毛片看| www.夜色 | 狠狠操夜夜操 | 中国美女洗澡免费看网站 | 91手机视频在线观看 | 欧美日韩爱爱 | 别揉我奶头啊嗯一区二区 | 欧美精品1区2区3区 精品成人一区 | 免费的av片| 天天色天天干天天色 | 美女黄色大片 | www.色播| 欧美a图| 久久久男人天堂 | 亚洲专区一区 | 色网站在线看 | 日韩一二三四 | 久久久久久久中文字幕 | 琪琪秋霞午夜被窝电影网 | 无码人妻精品一区二区三区温州 | 久久伊人中文字幕 | 成人在线免费播放 | 精品国产123 | 精品国自产在线观看 | 久久精品丝袜 | 国产伦精品一区二区三区四区免费 | 成人伊人网 | 免费三片在线观看网站v888 | 欧美激情在线狂野欧美精品 | 四虎影院新网址 | 动漫av网站免费观看 | 黄色av免费 | 久久综合精品国产二区无码不卡 | a毛片| 黄色a级片| 久久韩国 | 久久人体视频 | 午夜影视在线观看 | 97国产| 亚洲网站视频 | 国产欧美一区二区三区国产幕精品 | 日韩在线一二三区 | 99精品免费视频 |