算法05 模拟算法之二维数组相关内容详解【C++实现】

大家好,我是bigbigli,前面一节我们一节讲过一维数组的模拟了,如果还没看的话,可以👉点击此处。模拟算法还有很多内容需要讲,比如图像、日期相关的模拟算法,后续将继续更新,今天先来讲一下普通的二维数组相关模拟题目。

目录

训练:外围元素之和

解析

参考代码

训练:稀疏矩阵

解析

参考代码

训练:矩阵检测

解析

参考代码


训练:外围元素之和

给定一个m行n列的矩阵,求矩阵外围元素之和。所谓矩阵外围的元素,是矩阵第一行、最后一行、第一列和最后一列的所有元素。

【输入描述】第1行:为两个整数,分别表示矩阵的行数m和列数n,中间以一个空格间隔;

接下来m行为该矩阵m行n列的元素,且都为整数,每一行元素之间以一个空格隔开。

【输出描述】一个整数,表示该矩阵外围元素之和。

【样例输入】

3 4
1 2 2 1
5 6 7 8
9 3 0 5

【样例输出】

36

解析

外围元素需要把两行两列的元素全部加起来就行,需要在二维数组的中查找到满足行是第一行或者最后一行的,以及列是第一列的和最后一列的元素,求和即可。要注意的是不可以单独求出两行和两列分别的四个行列和,然后再相加,那样会有重复元素。

 

参考代码

#include<iostream>
using namespace std;
int a[110][110];
int main(){
    int m,n,sum
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bigbigli_大李

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值