计算矩阵边缘元素之和(c++)

题目描述

输入一个整数矩阵,计算位于矩阵边缘的元素之和。所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素。

输入格式

第一行分别为矩阵的行数 和列数 (m<100,n<100),两者之间以一个空格分开。

接下来输入的 行数据中,每行包含 个整数,整数之间以一个空格分开。

输出格式

输出对应矩阵的边缘元素和。

样例

样例输入
复制代码
复制3 3
3 4 1
3 7 1
2 0 1

样例输出

复制代码
复制15

日常发作业题解。

写作不易,点个赞呗!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int a[10005][10005],n,m,ans;
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin>>a[i][j];
		}
	} 
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			if(i==1||j==1||i==n||j==m){
				ans+=a[i][j];
			}	
		}
	} 
	cout<<ans;
}

太繁琐了所以可以优化;

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int a[10005][10005],n,m,ans;
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
            cin>>a[i][j];
			if(i==1||j==1||i==n||j==m){
				ans+=a[i][j];
			}	
		}
	} 
	cout<<ans;
}
相关推荐
豆瓣鸡7 分钟前
算法日记 - Day3
java·开发语言·算法
白白白小纯20 分钟前
算法篇—反转链表
c语言·数据结构·算法·leetcode
Achou.Wang35 分钟前
深入理解go语言-第5章 并发编程——Go的灵魂
大数据·算法·golang
The Chosen One98543 分钟前
高进度算法模板速记(待完善)
java·前端·算法
土豆.exe3 小时前
Fastjson2 2.0.53 哈希碰撞 RCE:从原理到三种打法
算法·哈希算法
黄河123长江4 小时前
有限Abel群的结构()
算法
峥无4 小时前
C++11 深度详解:现代 C++ 基石全梳理
开发语言·c++·笔记
阿米亚波4 小时前
【C++ STL】std::unordered_multimap
开发语言·数据结构·c++·笔记·stl
Jerry4 小时前
LeetCode 92. 反转链表 II
算法
小王C语言4 小时前
【3. 基于 Vibe Coding 的 OJ 平台】. 构建仓库、环境准备、需求梳理、安装依赖
网络·c++