1 条题解
-
0
G3014 [GESP202412 三级] 打印数字 题解
知识点:二维数组、字符串、图形输出。
解题思路
把数字0到3的5×5点阵预存为字符串数组。按行输出,每一行依次拼接所有输入数字对应的这一行图案。
为什么正确
每个数字的5行模板固定,按行横向拼接得到题目要求的并排显示。
易错点
该题仅涉及题面给定的0到3;数字之间不额外插入空格或空列。
复杂度
时间O(L),输出常数为25L;空间O(L)。
参考代码(C++17)
#include<bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); string s; cin>>s; vector<vector<string>>p= { { ".....",".***.",".***.",".***.","....." } , { "****.","****.","****.","****.","****." } , { ".....","****.",".....",".****","....." } , { ".....","****.",".....","****.","....." } } ; for(int i=0;i<5;i++) { for(char c:s)cout<<p[c-'0'][i]; cout<<"\n"; } }说明
本题解为配套教学整理,非官方题解。复杂度按本页参考实现计算,题库使用8个自行生成的测试点。
- 1