1 条题解
-
0
#include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e3+5,inf=0x3f3f3f3f,mod=1e9+7; int a[N][N], d[N][N]; // 323. 差分矩阵 void solve(){ int n,m,q; cin>>n>>m>>q; for(int i=1; i<=n; i++) for(int j=1; j<=m; j++){ cin>>a[i][j]; // 此处公式属于人为构造的 d[i][j] = a[i][j] -a[i-1][j] -a[i][j-1] +a[i-1][j-1]; } int x1,y1,x2,y2,c; while(q--){ cin>>x1>>y1>>x2>>y2>>c; d[x1][y1] += c; d[x1][y2+1] -= c; d[x2+1][y1] -= c; d[x2+1][y2+1] += c; } for(int i=1; i<=n; i++) for(int j=1; j<=m; j++){ d[i][j] += d[i-1][j] + d[i][j-1] - d[i-1][j-1]; cout<<d[i][j] <<" \n"[j==m]; } } int main(){ // freopen("in.txt", "r", stdin); int t=1; // cin>>t; while(t--) { solve(); } return 0; }
- 1
信息
- ID
- 323
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 4
- 标签
- 递交数
- 103
- 已通过
- 48
- 上传者