gesp(二级)(16)洛谷:B4037:[GESP202409 二级] 小杨的 N 字矩阵

gesp(二级)(16)洛谷:B4037:[GESP202409 二级] 小杨的 N 字矩阵

题目描述

小杨想要构造一个 m × m m \times m m×m 的 N N N 字矩阵( m m m 为奇数),这个矩阵的从左上角到右下角的对角线、第 1 1 1 列和第 m m m 列都是半角加号 + ,其余都是半角减号 - 。例如,一个 5 × 5 5 \times 5 5×5 的 N 字矩阵如下:

plain 复制代码
+---+
++--+
+-+-+
+--++
+---+

请你帮小杨根据给定的 m m m 打印出对应的 N 字矩阵。

输入格式

输入只有一行包含一个正整数 m m m。

输出格式

输出对应的 N N N 字矩阵。

样例 #1

样例输入 #1

复制代码
5

样例输出 #1

复制代码
+---+
++--+
+-+-+
+--++
+---+

提示

数据规模与约定

对全部的测试数据,保证 3 ≤ m ≤ 49 3 \leq m \leq 49 3≤m≤49 且 m m m 是奇数。

AC代码(100分)

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
/*思路:双层循环 
       i是行,j是列
	   第一列:j==1、最后一列:j==m、左上到右下对角线:i==j 
*/
int m;
int main(){
	cin>>m;
	for(int i=1;i<=m;i++){//i是行 
		for(int j=1;j<=m;j++){//j是列 
			if(j==1||j==m||i==j){//判断 
				cout<<'+';
			}else{
				cout<<'-';
			}
		}
		cout<<endl;
	}
	return 0;
}

文末彩蛋:

点击王老师青少年编程主页有更多精彩内容

相关推荐
Shea的笔记本4 分钟前
MindSpore实战笔记:Pix2Pix图像转换复现全记录
笔记·算法·机器学习·web3
清酒难咽7 分钟前
算法案例之蛮力法
c++·经验分享·算法
想逃离铁厂的老铁15 分钟前
Day50 >> 98、可达路径 + 广度优先搜索理论基础
算法·深度优先·图论
散峰而望19 分钟前
【数据结构】假如数据排排坐:顺序表的秩序世界
java·c语言·开发语言·数据结构·c++·算法·github
YMH.19 分钟前
1.23 指针
数据结构
海棠AI实验室21 分钟前
第十五章 字典与哈希:高效索引与去重
算法·哈希算法
独自破碎E27 分钟前
动态规划-打家劫舍I-II
算法·动态规划
尽兴-1 小时前
JVM垃圾收集器与三色标记算法详解
java·jvm·算法·cms·gc·g1·三色标记算法
沐欣工作室_lvyiyi1 小时前
IIR数字带通滤波器(论文+源码)
算法·matlab·毕业设计·数字滤波器
zh_xuan1 小时前
LeeCode 61. 旋转链表
数据结构·c++·算法·leetcode·链表