《B3955 [GESP202403 二级] 小杨的日字矩阵》

题目背景

对应的选择、判断题:https://ti.luogu.com.cn/problemset/1142

题目描述

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

复制代码
|---|
|xxx|
|---|
|xxx|
|---|

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

输入格式

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

输出格式

输出对应的"日字矩阵"。

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

输入输出样例

输入 #1复制

复制代码
5

输出 #1复制

复制代码
|---|
|xxx|
|---|
|xxx|
|---|

输入 #2复制

复制代码
7

输出 #2复制

复制代码
|-----|
|xxxxx|
|xxxxx|
|-----|
|xxxxx|
|xxxxx|
|-----|

代码实现;

cpp 复制代码
#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int mid = (n + 1) / 2;
    for (int i = 1; i <= n; ++i) {
        for (int j = 1; j <= n; ++j) {
            if (j == 1 || j == n)
                cout << "|";
            else if (i == 1 || i == n || i == mid)
                cout << "-";
            else
                cout << "x";
        }
        cout << endl;
    }
    return 0;
}
相关推荐
lisw052 天前
Dayhoff的PAM替换矩阵理论评介!
线性代数·算法·矩阵
莱茶荼菜8 天前
【slam公式】
人工智能·线性代数·机器学习
伯奥克客服9 天前
2026年视频矩阵厂家技术评估:从EDID到控制协议开放度的六维筛选法
线性代数·矩阵·音视频
释厄62310 天前
三角基底律——矩阵3x6 是所有三角形的基底·3D中高就是边
线性代数·3d·矩阵
桑年11 天前
四、Pandas数据处理
人工智能·python·线性代数·pandas·数据可视化·数据处理
zhongben_keji14 天前
家政小程序开发全解:经营模式、品类矩阵、派单约束与信用核验
线性代数·矩阵·apache
silvamux_14 天前
微头条爆款体平台适配实测:把交付要求变成可计算的指标
java·线性代数·算法·决策树·矩阵
晒太羊的猫16 天前
hot100矩阵问题
线性代数·矩阵
轻口味16 天前
启元无真机二开实战1:54 个接口能做什么、不能做什么——启元 Q1/T1 SDK 能力全景与版本矩阵
线性代数·矩阵·ros2·具身智能·启元机器人
Angel Q.17 天前
协方差矩阵:3DGS 里“椭球的形状说明书“
线性代数·3d·矩阵