当前位置: 首页 > news >正文

激光炸弹 刷题笔记

前置知识 二维前缀和

子矩阵的和 刷题笔记 {二维前缀和}-CSDN博客

思路  参考二维前缀和
将子矩阵的和 做成动态矩阵
一个个矩阵搜索 符合要求边长 矩阵中的元素和最大值
将x1,y1用i-k,j-k表示即可 
x2,y2用i,j表示

代码

#include<iostream>
#include<algorithm>
using namespace std;
const int N =5050;

int s[N][N];
int n,k,m,cnt;
int temp=0;
int main(){
    cin>>cnt>>k;
    //k=min(5001,k);
    //n=m=k;
    for(int i=0;i<cnt;i++){
        int x,y,w;
        cin>>x>>y>>w;
        x++;
        y++;
        s[x][y]+=w;
         n=max(n,x);
         m=max(m,y);
        
        
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            s[i][j]=s[i][j-1]+s[i-1][j]-s[i-1][j-1]+s[i][j];
        }
    }
    int ans=0;
    for(int i=k;i<=n;i++){
        for(int j=k;j<=m;j++){
            //s[i][j]=s[i][j-1]+s[i-1][j]-s[i-1][j-1]+a[i][j];
            temp=s[i][j]-s[i-k][j]-s[i][j-k]+s[i-k][j-k];
        //    cout<<i-1<<' '<<j-1<<endl<<i-k<<' '<<j-1<<endl<<i-1<<' '<<j-k<<endl<<i-k<<' '<<j-k<<endl<<endl;
            //cout<<temp<<endl;
            if(temp>ans){
                ans=temp;
            }
             //cout<<"s i-1 j-1  "<<s[i-1][j-1]<< " i-1 j-1 "<<i-1<<' '<<j-1<<endl;
            //cout<<"i-1 j-1 "<<i-1<<' '<<j-1<<endl<<"i-k  j-k  "<<i-k<<' '<<j-k<<endl;
        }
    }
    cout<<ans;
    return 0;

http://www.lryc.cn/news/311718.html

相关文章:

  • Vue3学习记录(三)--- 组合式API之生命周期和模板引用
  • Batch Normalization和Layer Normalization和Group normalization
  • 命名实体识别NER(综合代码示例)
  • 关于jQuery日历插件:daterangepicker
  • 【贪心算法】最大子序和
  • 爬虫逆向网站案例
  • 蓝桥杯复习之前缀和
  • 动态规划(算法竞赛、蓝桥杯)--背包DP求具体方案
  • go写mysql取得自增字段值
  • Vue 3的Composition API和vue2的不同之处
  • go语言基础 -- 面向对象编程
  • HarmonyOS—编译构建概述
  • 下载element-ui 资源,图标 element-icons.woff,element-icons.ttf 无法解码文件字体
  • Flutter整体框架
  • JVM堆内存中新生代晋升到老年代的条件
  • 前端监控为什么采用GIF图片做埋点?
  • webstorm 创建运行纯Typescript项目
  • GO-接口
  • 【C语言】动态内存管理常用函数
  • 【OpenGL】(1) 专栏介绍:OpenGL 库 | 3D 计算机图形应用 | GPGPU 计算 | 3D 建模和 3D动画 | 渲染技术介绍
  • SPI总线知识总结
  • 【异常关闭clas*h,导致无法访问任何网页_解决办法】
  • STL-map和set
  • [蓝桥杯 2020 省 B1] 整除序列
  • 【Android】View 的滑动
  • 基于ZYNQ的PCIE高速数据采集卡的设计(一)
  • 渗透测试工具 nmap 详解
  • Ubuntu下安装Scala
  • 无法启动报,To install it, you can run: npm install --save @/components/iFrame/index
  • 深入理解现代JavaScript:从语言特性到应用实践