信息学奥赛一本通1224:最大子矩阵

信息学奥赛一本通C++语言——1224:最大子矩阵 【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。 比如,如下4×4的矩阵 09−4−1−2218−7−6−40021−2 的最大子矩阵是 9−4−1218 这个子矩阵的大小是15。 【输入】 输入是一个N×N的矩阵。输入的第一行给出N(0<N≤100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右... 阅读详情

1224:最大子矩阵


时间限制: 1000 ms         内存限制: 65536 KB
提交数: 14376     通过数: 7980

【题目描述】

已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。

比如,如下4×4的矩阵

0 -2 -7  0
 9  2 -6  2
-4  1 -4  1
-1  8  0 -2

的最大子矩阵是

9 2

-4 1

-1 8

这个子矩阵的大小是1515。

【输入】

输入是一个N×N的矩阵。输入的第一行给出N(0<N<=100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数……)给出矩阵中的N^2个整数,整数之间由空白字符分隔(空格或者空行)。已知矩阵中整数的范围都在[−127,127]。

【输出】

输出最大子矩阵的大小。

【输入样例】

4
 0 -2 -7  0
 9  2 -6  2
-4  1 -4  1
-1  8  0 -2

【输出样例】

15

二维前缀和

#include<bits/stdc++.h>
using namespace std;
int n,a[101][101],b[101][101],sum;
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			cin>>a[i][j];
			b[i][j]=b[i-1][j]+b[i][j-1]-b[i-1][j-1]+a[i][j];
		}
	}
	sum=b[1][1];
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			for(int k=1;k<=i;k++)
			{
				for(int m=1;m<=j;m++)
				{
					sum=max(sum,b[i][j]-b[i][m-1]-b[k-1][j]+b[k-1][m-1]);
				}
			}
		}
	}
	cout<<sum;
}
/*
  1 2 3 4
1 +     -
2   * * *
3   * * *
4 - * * !
4,4 ~ 2,2
i,j ~ k,m
*/

C++一本通在线测评网站 题目1224 本题考查二维数组的使用与变化和少量的算法应用,逻辑较为简单,其实就是一道关于矩阵的变化的题目。加之由递归式的思维得出的关于一维直线式求最大和需要2个循环的结论看出,我们做二维矩阵是可以用三循环做出的。(这里的的所谓“几循环”是指程序中维数最多的循环的维数,列如有一个程序,它有3个一循环和2个2循环,一个3循环,还有1个4循环,那么它就会被称作四循环程序)我们可以用一个变量ans每次算出这个子矩阵的总和,再依次作比较找出最大的即可。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。 阅读详情

相关推荐

1224:最大子矩阵 2020-12-02

1224:最大子矩阵 时间限制: 1000 ms 内存限制: 65536 KB【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。 比如,如下4×4的矩阵 0 −2 −7 0 9 2 −6 2 −4 1 −4 1 −1 8 0 −2 的最大子矩阵是 9 2 −4 −1 1 8 这个子矩阵的大小是15。【输入】 输入是一个N×N的矩阵。输入的第一行给出N(0<N≤100)。再后面的若干行中,依次(首先从左到右给出第一行的...

lybc2019的博客 1178

信息学奥赛一本通(1224:最大子矩阵)

1224:最大子矩阵 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 5292 通过数: 3128 【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。 【输入】 输入是一个N×N的矩阵。输入的第一行给出N(0 【输出】 输出最大子矩阵的大小。 【输入样例】 4 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 ...

2335

信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

信息学奥赛一本通(基础算法与数据结构-题解汇总)

lybc2019的博客 1万+

信息学奥赛一本通 1282:最大子矩阵

【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1 × 1)子矩阵。 比如,如下4 × 4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 的最大子矩阵是 9 2 -4 1 -1 8 这个子矩阵的大小是15。 【输入】 输入是一个N×N 的矩阵。输入的第一行给出N(0<N≤100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数……)给出矩阵中的N2个整

qq_44618625的博客 1463

机械臂TCP标定实战:从四点法到六点法的精度跃迁

本文详细解析机械臂TCP标定技术,从基础的四点法到高精度的六点法实现精度跃迁。通过工具坐标系与基坐标系的转换原理,结合实战案例展示六点法如何将装配合格率提升至99.5%,并分享环境控制、操作技巧等提升标定精度的关键要素。

weixin_29038345的博客 896

海康威视摄像头CVE-2017-7921漏洞复现:从零到一的实战指南(含解密工具下载)

本文详细解析了海康威视摄像头CVE-2017-7921漏洞的技术原理与复现方法,提供从环境搭建到实战利用的完整指南。通过认证绕过漏洞,攻击者可获取敏感信息并执行高权限操作,文章还包含解密工具下载与防御建议,助力安全研究人员深入理解物联网设备安全风险。

weixin_29325515的博客 814

信息学奥赛一本通 1224:最大子矩阵(evd)

【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。 比如,如下4×4的矩阵 09−4−1−2218−7−6−40021−2 的最大子矩阵是 9−4−1218 这个子矩阵的大小是15。 【输入】 输入是一个N×N的矩阵。输入的第一行给出N(0<N≤100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数……)给出矩阵中的N2个整数,整数之间由空白字符分隔(空格或者空行)。已知矩阵中整数的范围都

everwide的博客 726

手把手教你用VCS+Verdi在Linux下仿真蜂鸟E203 RISC-V核(附波形调试技巧)

本文详细介绍了在Linux环境下使用VCS和Verdi工具链对蜂鸟E203 RISC-V核进行仿真验证的完整流程。从环境配置、工程结构解析到VCS编译优化和Verdi波形分析技巧,提供了实战性强的调试方法和性能优化策略,帮助工程师高效完成数字IC验证工作。

weixin_42531163的博客 416

信息学奥赛一本通 1224:最大子矩阵

【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×11×1)子矩阵。 比如,如下4×4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 的最大子矩阵是 9 2 -4 1 -1 8 这个子矩阵的大小是15。 【输入】 输入是一个N×N的矩阵。输入的第一行给出N(0<N≤100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给.

m0_51344983的博客 817

SMART200如何实现多次调用子程序带定时器功能

1、西门子200PLC的子程序由于很多限制条件,如果希望建立一个可以多次调用的子程序,那么这个子程序里是不能含有定时器指令的,所以我们只能退而求其次了。建议将沿指令(上升沿、下降沿)放在多次调用子程序的外面。 2、可以提供不同的时基,提供不同时间的定时 3、实现秒定时 5、子程序内部: STL代码: 1、时基信号由外部提供、 可以提供不同的时基信号 2、实现循环定时开关 LD #Start:L0....

RXXW_Dor的博客 1万+

qcc304x笔记之手机端显示电量(九)

默认的sdk有些安卓手机不支持电量显示,所以需要加电量显示的补丁 流程分析 1. 首先新建一个task,并将task注册给电池模块 appBatteryRegister(batteryRegistrationForm) 实现handler处理函数,当battery模块电池电量更新后,会将电池百分比值发送到本模块,然后我们就可以在handler中将实时电量同步到手机端了。 hfpAtCmdInit atCmdTask.task.handler = appAtCmdHandleM...

在云巅的博客 2201

信息学奥赛一本通:1224:最大子矩阵

输入是一个N×N的矩阵。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数……)给出矩阵中的N2个整数,整数之间由空白字符分隔(空格或者空行)。已知矩阵中整数的范围都在[−127,127][−127,127]。已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。时间限制: 1000 ms 输出最大子矩阵的大小。

ffsdfg的博客 830

华为OD机试真题2025双机位C卷 Java&Go 实现【统计员工影响力分数】

华为OD机试真题2025双机位C卷 C语言 实现【统计员工影响力分数】假设你是大型科技公司的数据分析师,负责分析公司内部员工的社交网络。你需要编写一个函数来计算每个员工的影响力分数。影响力分数定义为该员工直接和间接影响的员工数量。 输入描述

MISAYAONE的博客 281

【题解-信息学奥赛一本通】1224:最大子矩阵

输入是一个N×N的矩阵。输入的第一行给出N(0<N<=100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数……已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。个整数,整数之间由空白字符分隔(空格或者空行)。已知矩阵中整数的范围都在[−127,127]。这个子矩阵的大小是15。比如,如下4×4的矩阵。输出最大子矩阵的大小。

写代码的犄角旮瘩 326

Windows配置L2TP/IPsec连接

Windows 系统的 L2TP/IPsec 功能,通过配置即可构建加密 VPN 通道。

m0_61806534的博客 1668

【推荐100个unity插件】将UE的资源导出到unity使用—— Exporter for Unreal to/for Unity插件

Unreal to Unity导出器是一款帮助开发者将Unreal Engine项目转换为Unity的工具。文章详细介绍了使用步骤:1)安装虚幻引擎并创建项目;2)在Plugins文件夹中安装导出插件;3)导入UE资产到Content文件夹;4)配置导出参数并完成转换。文末推荐了多个Unity开发专栏,涵盖C#编程、2D/3D开发、特效制作等内容。作者向宇提供了博客地址,欢迎读者交流学习。该工具能有效提升项目迁移效率,适合需要跨引擎开发的用户使用。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 853

【刷题】信息学奥赛一本通1224:最大子矩阵 之 两种理解方式

这个题目说了0<N<=100,所以就算四层循环也才2^8,不超过2^9,所以不会越界。但是像洛谷P1115最大字段和1≤n≤2×10^5,两层循环就爆了,所以这个题用暴力的话只能拿一部分分,要用动态规划来解决(二十六)早上刷题突然刷的脑子有点乱了,这个二维矩阵还挺有意思,有两种理解方式,日常用格子视角多一点,写着写着突然把数组下标理解成边界线下标了,于是混写起来的话总是答案错误,所以写一下这篇用以警醒。想象在格子之间画线,线0在格子1之前,线1在格子1之后。表示第 i 行第 j 列的那个。

2401_83767655的博客 72

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

信息学奥赛一本通 1224:最大子矩阵 贪心算法

输入是一个N×N的矩阵。输入的第一行给出N(0

长春高老师编程 1178

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

信息学奥赛一本通 1224:最大子矩阵 | 1282:最大子矩阵 | OpenJudge 2.6 1768:最大子矩阵 | 洛谷 P1719 最大加权矩形

【题目链接】 ybt 1282:最大子矩阵 OpenJudge 2.6 1768:最大子矩阵 【题目考点】 1. 动态规划:线性动规 2. 前缀和 【解题思路】 求二维最大子矩阵和,与其相对的一维问题为求最大子段和。 我们可以思考将该二维问题降维为一维问题,而后就是一个求最大子段和的问题了。 记第(i,j)(i,j)(i,j)位置元素的值为ai,ja_{i,j}ai,j​ 遍历每一种可能的i1i_1i1​与i2i_2i2​的组合,共有n(n+1)/2n(n+1)/2n(n+1)/2种情况 i1=1i_1=

君义NOIP的博客 4383

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

信息奥赛一本通:1224最大子矩阵

【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。 比如,如下4×4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 的最大子矩阵是 9 2 -4 1 -1 8 这个子矩阵的大小是15。 【输入】 输入是一个N×N的矩阵。输入的第一行给出N(0<N≤100)。...

mengdicfm的博客 929

最大子矩阵(信息学奥赛一本通 1224)

【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。 【输入】 输入是一个N×N的矩阵。输入的第一行给出N(0<N≤100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数……)给出矩阵中的N2个整数,整数之间由空白字符分隔(空格或者空行)。已知矩阵中整数的范围都在[...

anglanjing7414的博客 657

最大子矩阵(信息学奥赛一本通-1224)

输入是一个N×N的矩阵。输入的第一行给出N(0<N<=100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数……)给出矩阵中的N2个整数,整数之间由空白字符分隔(空格或者空行)。已知矩阵中整数的范围都在[−127,127]。已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。比如,如下4×4的矩阵09−4−1−2218−7−6−40021−2的最大子矩阵是9−4−1218这个子矩阵的大小是15。

2402_84298973的博客 271

最大子矩阵(信息学奥赛一本通-T1224)不是很会啊

https://blog.youkuaiyun.com/u011815404/article/details/80298641 #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<algorithm> #define INF 9999999...

weixin_45988242的博客 341

最大子矩阵(信息学奥赛一本通-T1224)

【题目描述】 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×11×1)子矩阵。 比如,如下4×4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 的最大子矩阵是 9 2 -4 1 -1 8 这个子矩阵的大小是15。 ...

Alex_McAvoy的博客 5298

信息学奥赛一本通(C++版) 第二部分 基础算法 第六章 贪心算法

总目录详见:https://blog.youkuaiyun.com/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 第二部分 基础算法 第六章 贪心算法 不适合初学者做的题如下 2018-5-17 1321 【例6.3】删数问题(Noip1994) 1322 【例6.4】拦截导弹问题(Noip1999) 1324 【例6.6】整数区间 1224 最大子矩阵...

mrcrack的博客 8024
上一篇: devc++跑酷游戏2.0.0
下一篇: 信息学奥赛一本通1228:书架
Jsjjsnmsk
博客等级 码龄4年 548粉丝 41原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值