前缀和问题2(c++)

干货

题目练习

(续上一篇,如需了解上一篇题目,请移步主页观看)

和的绝对值不超过 K 的最长子数组

cpp 复制代码
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int n,m;
int a[5010][5010];
int dp[5010][5010];
int man,mam;

int main()
{
	cin>>n>>m;
	for(int i = 1;i<=n;i++)
	{
		int x,y,v;
		cin>>x>>y>>v;
		man = max(man,x);
		mam = max(mam,y);
		a[x-1][y-1] = v;
	}
	for(int i = 1;i<=man;i++)
	{
		for(int j = 1;j<=mam;j++)
		{
			dp[i][j] = dp[i-1][j]+dp[i][j-1]-dp[i-1][j-1]+a[i-1][j-1];
		}
	}
	int ma = -999999999;
	for(int i1 = 0;i1<=man-m;i1++)
	{
		for(int j1 = 0;j1<=man-m;j1++)
		{
			int i2 = i1+m-1;
			int j2 = j1+m-1;
			int sum = dp[i2+1][j2+1]-dp[i2+1][j1]-dp[i1][j2+1]+dp[i1][j1];
			ma = max(ma,sum);
		}
	}
	cout<<ma;
	
	return 0;
}
相关推荐
咩咦13 分钟前
C++学习笔记22:前置后置 ++/-- 和日期减日期
c++·学习笔记·运算符重载·日期类·前置++·后置++·日期减日期
计算机安禾18 分钟前
【c++面向对象编程】第40篇:单例模式(Singleton)的多种C++实现
开发语言·c++·单例模式
叶小鸡22 分钟前
小鸡玩算法-力扣HOT100-动态规划(上)
算法·leetcode·动态规划
LuminousCPP29 分钟前
数据结构 - 线性表第三篇:基于顺序表实现 C 语言通讯录(基础功能篇)
c语言·数据结构·经验分享·笔记·算法
_日拱一卒33 分钟前
LeetCode:114二叉树展开为链表
java·开发语言·算法
无小道43 分钟前
Redis——哈希类型相关指令
redis·算法·哈希算法
凌波粒1 小时前
LeetCode--513.找树左下角的值(二叉树)
java·算法·leetcode
一个不知名程序员www1 小时前
算法学习入门---算法题DAY1
c++·算法
子琦啊1 小时前
构造函数、this指向和原型链机制
javascript·算法·贴图
WHS-_-20221 小时前
Millimeter Wave ISAC-SLAM: Framework and RFSoC Prototype
人工智能·算法·原型模式