2023-8-15差分矩阵

题目链接:差分矩阵

c++ 复制代码
#include <iostream>

using namespace std;

const int N = 1010;

int n, m, q;
int a[N][N], b[N][N];

void insert(int x1, int y1, int x2, int y2, int c)
{
    b[x1][y1] += c;
    b[x1][y2 + 1] -= c;
    b[x2 + 1][y1] -= c;
    b[x2 + 1][y2 + 1] += c;
}

int main()
{
    scanf("%d%d%d", &n, &m, &q);
    for(int i = 1; i <= n; i ++)
        for(int j = 1; j <= m; j ++)
            scanf("%d", &a[i][j]);
    for(int i = 1; i <= n; i++)
        for(int j = 1; j <= m; j++)
            insert(i, j, i, j, a[i][j]);
    while(q --)
    {
        int x1, y1, x2, y2, c;
        scanf("%d%d%d%d%d", &x1, &y1, &x2, &y2, &c);
        insert(x1, y1, x2, y2, c);
    }
    
    // 构造前缀和
    for(int i = 1; i <= n; i++)
        for(int j = 1; j <= m; j ++)
            b[i][j] += b[i][j - 1] + b[i - 1][j] - b[i - 1][j - 1];
    for(int i = 1; i <= n; i ++)
    {    
        for(int j = 1; j <= m; j++) printf("%d ", b[i][j]);
        puts("");
    }        
    return 0;
}
相关推荐
2301_7665586510 小时前
深度解析:矩阵跃动小陌GEO语义场建模原理,筑牢企业AI搜索占位技术壁垒
人工智能·线性代数·矩阵
穿条秋裤到处跑14 小时前
每日一道leetcode(2026.03.26):等和矩阵分割 II
算法·leetcode·矩阵
重生之我是Java开发战士19 小时前
【广度优先搜索】多源BFS:矩阵,飞地的数量,地图中的最高点,地图分析
数据结构·算法·矩阵·广度优先
别或许21 小时前
6、线性代数之二次型(知识总结)
线性代数
Tisfy21 小时前
LeetCode 3548.等和矩阵分割 II:矩阵旋转 + 哈希表
leetcode·矩阵·散列表·题解·哈希表·矩阵旋转
剑穗挂着新流苏31221 小时前
201_深度学习的数学底座:PyTorch 线性代数与范数实战
pytorch·深度学习·线性代数
Q741_1471 天前
每日一题 力扣 3548. 等和矩阵分割 II 前缀和 哈希表 C++ 题解
算法·leetcode·前缀和·矩阵·力扣·哈希表
岑梓铭1 天前
《考研408数据结构》第三章3(数组矩阵)复习笔记
数据结构·笔记·矩阵
TK云大师-KK1 天前
TikTok自动化直播遇到内容重复问题?这套技术方案了解一下
大数据·运维·人工智能·矩阵·自动化·新媒体运营·流量运营
ryrhhhh1 天前
多平台同步优化技术:矩阵跃动小陌GEO如何实现一次配置、全端搜索曝光
人工智能·线性代数·矩阵