【模板】二维前缀和

原题链接:登录—专业IT笔试面试备考平台_牛客网

目录

1. 题目描述

2. 思路分析

3. 代码实现


1. 题目描述

2. 思路分析

二维前缀和板题。

二维前缀和:pre[i][j]=a[i][j]+pre[i-1][j]+pre[i][j-1]-pre[i-1][j-1];

子矩阵 左上角为(x1,y1) 右下角(x2,y2) 的和:

pre[x2][y2]-pre[x2][y1-1]-pre[x1-1][y2]+pre[x1-1][y1-1];

3. 代码实现

#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
const int N=1010;
int a[N][N],pre[N][N];

signed main(){
    ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    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];
            pre[i][j]=a[i][j]+pre[i-1][j]+pre[i][j-1]-pre[i-1][j-1];
        }
    }
    while(q--){
        int x1,y1,x2,y2;
        cin>>x1>>y1>>x2>>y2;
        cout<<pre[x2][y2]-pre[x2][y1-1]-pre[x1-1][y2]+pre[x1-1][y1-1]<<endl;
    }
    return 0;
}

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-02 20:24:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-02 20:24:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-02 20:24:02       82 阅读
  4. Python语言-面向对象

    2024-05-02 20:24:02       91 阅读

热门阅读

  1. ROS学习笔记12——tf坐标变换

    2024-05-02 20:24:02       29 阅读
  2. Ubuntu 24.04 配置镜像源

    2024-05-02 20:24:02       31 阅读
  3. vue 预览 pdf pdf.js 的具体使用

    2024-05-02 20:24:02       33 阅读
  4. 第一章 Python基础介绍

    2024-05-02 20:24:02       26 阅读
  5. 深入解析 Spring Boot 中的 Reactor 模型

    2024-05-02 20:24:02       33 阅读
  6. PyMJCF 使用教程

    2024-05-02 20:24:02       25 阅读
  7. 分布式存储系统学习(1)

    2024-05-02 20:24:02       32 阅读
  8. Pyserini

    Pyserini

    2024-05-02 20:24:02      29 阅读
  9. Flutter:继承接口类,并将多个子类实例化

    2024-05-02 20:24:02       32 阅读
  10. 使用 Python 和 Keras 实现卷积神经网络

    2024-05-02 20:24:02       40 阅读