【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;
}

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

相关推荐
研梦非凡几秒前
ICCV 2025|基于曲线感知高斯溅射的3D参数曲线重建
人工智能·算法·3d
XFF不秃头2 分钟前
力扣刷题笔记-三数之和
c++·笔记·算法·leetcode
滴滴滴嘟嘟嘟.2 分钟前
Qt信号与槽机制
开发语言·qt
快起来搬砖了6 分钟前
实现一个优雅的城市选择器组件 - Uniapp实战
开发语言·javascript·uni-app
Pafey6 分钟前
VS2022 + Qt5.9 中文乱码/项目设置utf-8编码
c++·qt·中文乱码
wu~97012 分钟前
开发思路篇:转账接口设计
java·开发语言
带娃的IT创业者15 分钟前
实战:用 Python 搭建 MCP 服务 —— 模型上下文协议(Model Context Protocol)应用指南
开发语言·python·mcp
minji...18 分钟前
C++ STL之list的使用
开发语言·c++
万粉变现经纪人19 分钟前
如何解决pip安装报错ModuleNotFoundError: No module named ‘python-dateutil’问题
开发语言·ide·python·pycharm·pandas·pip·httpx
被遗忘的旋律.25 分钟前
Linux驱动开发笔记(十)——中断
linux·驱动开发·笔记