当前位置: 首页 > article >正文

gesp(二级)(12)洛谷:B3955:[GESP202403 二级] 小杨的日字矩阵

gesp(二级)(12)洛谷:B3955:[GESP202403 二级] 小杨的日字矩阵

在这里插入图片描述

题目描述

小杨想要构造一个 N × N N\times N N×N 的日字矩阵( N N N 为奇数),具体来说,这个矩阵共有 N N N 行,每行 N N N 个字符,其中最左列、最右列都是 |,而第一行、最后一行、以及中间一行(即第 N + 1 2 \frac{N+1}{2} 2N+1 行)的第 2 ∼ N − 1 2\sim N-1 2N1 个字符都是 - ,其余所有字符都是半角小写字母 x 。例如,一个 N = 5 N = 5 N=5 日字矩阵如下:

|---|
|xxx|
|---|
|xxx|
|---|

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

输入格式

一行一个整数 N N N 5 ≤ N ≤ 49 5\leq N \leq 49 5N49,保证 N N N 为奇数)。

输出格式

输出对应的“日字矩阵”。

请严格按格式要求输出,不要擅自添加任何空格、标点、空格等任何符号。你一个恰好输出 N N N 行,每行除了换行符外恰好包含 N N N 个字符,这些字符要么是 -,要么是 |,要么是 x你的输出必须和标准答案完全一致才能得分,请在提交前仔细检查

样例 #1

样例输入 #1

5

样例输出 #1

|---|
|xxx|
|---|
|xxx|
|---|

样例 #2

样例输入 #2

7

样例输出 #2

|-----|
|xxxxx|
|xxxxx|
|-----|
|xxxxx|
|xxxxx|
|-----|

AC代码(100分)

#include<bits/stdc++.h>
using namespace std;
//按题意模拟 
int n;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){//外层循环控制行 
		if(i==1 || i==(n+1)/2 || i==n){//第一行、中间行、最后一行 
			for(int j=1;j<=n;j++){
				if(j==1 || j==n){//每行的第一列和最后一列 
					cout<<'|';
				}else{//其它列 
					cout<<'-';
				}
			}		
		}else{//其它行 
			for(int j=1;j<=n;j++){
				if(j==1 || j==n){
					cout<<'|';
				}else{
					cout<<'x';
				}
			}
		}
		cout<<endl;
	}
	return 0;
}

文末彩蛋:

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


http://www.kler.cn/a/452179.html

相关文章:

  • Logback日志框架中的继承机制详解
  • 打造高效的 LaTeX 公式编辑器
  • 2.利用docker进行gitlab服务器迁移
  • 【Linux】查询磁盘空间被谁占用了
  • 瑞吉外卖项目学习笔记(七)新增菜品、(批量)删除菜品
  • 详解磁盘IO、网络IO、零拷贝IO、BIO、NIO、AIO、IO多路复用(select、poll、epoll)
  • QT从入门到精通(三)——实现文件列表遍历的图像浏览器
  • 【Linux编程】TcpServer 类的设计与实现:构建高性能的 TCP 服务器(二)
  • 《实战AI智能体》魔搭多 Agent 模式(一)
  • cannot import name ‘_C‘ from ‘pytorch3d‘
  • Ubuntu环境 nginx.conf详解(二)
  • torch.nn.init 模块介绍
  • CSS基础-长度单位
  • golang LeetCode 热题 100(哈希)
  • 【zookeeper核心源码解析】第二课:俯瞰QuorumPeer启动核心流程,实现选举关键流程
  • UI自动化测试实战实例
  • debian 编译openwrt
  • idea集合git使用
  • 单片机:实现LED亮度等级控制(附带源码)
  • Zookeeper常见面试题解析
  • Docker 快速搭建 GBase 8s数据库服务
  • 重温设计模式--6、享元模式
  • Android蓝牙通信
  • VR 动感单车身心调适系统的功能与作用
  • 前端 MYTED单篇TED词汇学习功能优化
  • Leetcode 695 Max Area of Island