【CCF GESP 2 级】小杨的H字矩阵 洛谷 B3924

首先,这题数据肯定有大问题。为什么答案输出了数字?

  • 20250228 upd:该数据已被修复,可放心提交。

好了,不提这个了。讲讲思路:

因为 a 有很多,单独填充很麻烦,所以先把数组的所有值都填充字符 a

然后就在第一列和最后一列填充 |

最后按题目要求在 ( n + 1 ) 2 \frac{(n+1)}{2} 2(n+1) 的第 2 2 2 到 n − 1 n-1 n−1 列填充 -,完事。

整理一下:

  1. 全部填充 a
  2. 在第一列和最后一列填充 |
  3. 在 ( n + 1 ) 2 \frac{(n+1)}{2} 2(n+1) 的第 2 2 2 到 n − 1 n-1 n−1 列填充 -
  4. 输出答案。

代码:

cpp 复制代码
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
char a[101][101];
signed main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++)a[i][j]='a';
	}
	for(int i=1;i<=n;i++){
		a[i][1]=a[i][n]='|';
	}
	int t=(n+1)/2;
	for(int i=2;i<=n-1;i++){
		a[t][i]='-';
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++)cout<<a[i][j];
		cout<<'\n'; 
	}
	return 0;
}

这就是全部了,希望可以帮到你!

相关推荐
ALex_zry15 分钟前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
EAI-Robotics1 小时前
机器人操作鲁棒性:当机械手遇上真实世界的不确定性
人工智能·算法·机器人
Zw-awa1 小时前
01-写了include之后到底发生了什么
c语言
她说..1 小时前
Java 默认值设置方式
java·开发语言·后端·springboot
dexi.Chi 攻城狮1 小时前
SQL层次查询语法
经验分享·笔记·sql
忧郁的紫菜1 小时前
基础实现:单篇 Markdown 转 Word
开发语言·c#·word
甜美的小天鹅2 小时前
Swifter C#之inline还是不inline,这是个问题
开发语言·c#
小短腿的代码世界2 小时前
Qt Bluetooth源码深度解析:从HCI协议到跨平台API的完整架构
开发语言·qt·架构
Tairitsu_H2 小时前
[LC优选算法#17] 链表 | 合并 K 个升序链表 | K个⼀组翻转链表
数据结构·算法·链表
_olone2 小时前
Luogu P2704 [NOI2001] 炮兵阵地
c++·算法·状压dp