L1-054 福到了 (15 分)
“福”字倒着贴,寓意“福到”。不论到底算不算民俗,本题且请你编写程序,把各种汉字倒过来输出。这里要处理的每个汉字是由一个 N × N 的网格组成的,网格中的元素或者为字符 @ 或者为空格。而倒过来的汉字所用的字符由裁判指定。

输入格式:
输入在第一行中给出倒过来的汉字所用的字符、以及网格的规模 N (不超过100的正整数),其间以 1 个空格分隔;随后 N 行,每行给出 N 个字符,或者为 @ 或者为空格。

输出格式:
输出倒置的网格,如样例所示。但是,如果这个字正过来倒过去是一样的,就先输出bu yong dao le,然后再用输入指定的字符将其输出。

输入样例 1:

$ 9@  @@@@@
@@@  @@@ @   @ @
@@@  @@@
@@@ @@@@@
@@@ @ @ @
@@@ @@@@@@  @ @ @@  @@@@@

输出样例 1:

$$$$$  $
$ $ $  $
$$$$$ $$$
$ $ $ $$$
$$$$$ $$$$$$  $$$$ $   $ $$$  $$$
$$$$$  $
输入样例 2:
& 3
@@@@
@@@输出样例 2:
bu yong dao le
&&&&
&&&

【思路】
不是非常难的题,用递归能很轻松解掉,关键是注意一下坑点就行了。
字符读入的时候会将输入末尾的回车符也读进去,要想不让回车进行干扰,就用getchar函数在必要的时候读掉回车即可!

AC代码:

#include<iostream>
using namespace std;char ch;
int len;
int n;
int g;                          //边界
const int maxn = 102;
char a[maxn][maxn];
char b[maxn][maxn];void f(int k)                    //f函数,把第k排以下的部分都倒过去
{//将第一排倒过去int row = len - k;               //我要去的排数int col;                        //每个元素要去的列for(int j = 1;j <= n;j++){col = len - j;              //算出要去的列号 if(a[k][j] == ' ')b[row][col] = ' ';elseb[row][col] = ch;} if(k != n)                        //base case: k == gf(k + 1);
}bool judge()
{bool ok = true;for(int i = 1;i <= n;i++){for(int j = 1;j <= n;j++){if((a[i][j] == ' ' && b[i][j] != ' ') || (a[i][j] != ' ' && b[i][j] == ' '))return false;}}return true;
}int main()
{cin >> ch >> n;getchar();                  //读回车 for(int i = 1;i <= n;i++){for(int j = 1;j <= n;j++){scanf("%c", &a[i][j]);    }   getchar();              //读回车 }len = n + 1;f(1);if(judge())                   //加个判断即可 {cout << "bu yong dao le" << endl;}for(int i = 1;i <= n;i++){for(int j = 1;j <= n;j++){cout << b[i][j];}cout << endl;}return 0;
}

天梯赛习题:福到了(递归打印)相关推荐

  1. 团体程序设计天梯赛——L1-054 福到了

    团体程序设计天梯赛--L1-054 福到了 https://pintia.cn/problem-sets/994805046380707840/problems/994805076512587776 ...

  2. Python入门习题(57)——团体程序设计天梯赛习题:古风排版

    天梯赛习题:古风排版 题目描述 解题思路 数据结构 算法 细节 参考答案 测试用例 小结 题目描述 中国的古人写文字,是从右向左竖向排版的.本题就请你编写程序,把一段文字按古风排版. 输入格式: 输入 ...

  3. pat天梯赛L1-054. 福到了

    L1-054. 福到了 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 "福"字倒着贴,寓意"福到 ...

  4. 天梯赛 L1-054 福到了 (15 分) C++

    题目链接. 解题思路: 将整行读到字符串中,通过reverse()函数将字符串逆序在从后往前遍历输出,定义两个字符串数组来判断是否需要倒置,将$转换成char写的有点麻烦. #include<b ...

  5. 天梯赛习题:直捣黄龙(Dijsk算法 + dfs + 路径状态存储)

    L3-011 直捣黄龙 (30 分) 本题是一部战争大片 -- 你需要从己方大本营出发,一路攻城略地杀到敌方大本营.首先时间就是生命,所以你必须选择合适的路径,以最快的速度占领敌方大本营.当这样的路径 ...

  6. 【团体天梯赛/PTA】7-34 福到了 (15 分)

    [团体天梯赛/PTA]7-34 福到了 (15 分) "福"字倒着贴,寓意"福到".不论到底算不算民俗,本题且请你编写程序,把各种汉字倒过来输出.这里要处理的每 ...

  7. 团体程序设计天梯赛 -- 练习集 (L1合集)

    文章目录 L1-001 Hello World (5 分) L1-002 打印沙漏 (20 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) L1-005 考试座位 ...

  8. PTA|团体程序设计天梯赛-练习题库集

    文章目录 关于爬取脚本的编写 L1-001 Hello World! (5 分) L1-002 打印沙漏 (15 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) ...

  9. PTA团体程序设计天梯赛-练习集Level-1(参考代码C语言/Python版)

    本题目集截止到2022年天梯赛 受个人水平限制,<PTA团体程序设计天梯赛-练习集>中暂时只能把Level-1的题目做出来(也许有些Level-2的题可以写出来?)-我不是专门搞竞赛的,参 ...

最新文章

  1. Spring-AOP 混合使用各种切面类型及不同切面总结
  2. 【杭电多校2020】Lead of Wisdom【搜索】【复杂度证明】
  3. django的url控制系统
  4. java peek函数_Java 8 Stream Api 中的 peek 操作
  5. 大数据技术周报第 004 期
  6. 《快活帮》第二次作业:团队项目选题报告
  7. 剑指offer之孩子们的游戏
  8. 独立线程池的作用及IO线程池
  9. oracle分区表 mysql_Oracle分区表的使用和管理
  10. Sudoku-Java
  11. 车辆工程计算机发展前景,车辆工程专业就业方向有哪些 就业前景怎么样
  12. serializer嵌套序列化
  13. B站视频下载及本地文件名修正
  14. linux 如何获取最高权限 设定
  15. matlabadftest_ADF检验matlab代码,看看啊
  16. iOS Xib Storyboard
  17. 球球大作战如何在电脑上玩 球球大作战电脑版教程
  18. Nginx 414 Request-URI Too Large报错解决方法
  19. nodejs和npm的关系
  20. Aspects 是什么,解决了什么问题?

热门文章

  1. U盘内容被病毒隐藏的解决办法(亲测可用)
  2. RocketMQ吐血整理
  3. 2021科大讯飞全球1024开发者节盛大开幕
  4. 一小时刷完英语口语常用3000词汇(绿色护眼版)day6-词汇501-600
  5. 如何实现Obsidian笔记云同步? | 实践
  6. 天球坐标系、地球坐标系与地球自转有无关系?哪一种便于描述地面观测站的空间位置?哪一种便于描述人造地球卫星的位置?总结GNSS定位的时空基准? GPS卫星定位中,时间系统有何重要意义?
  7. 关于计算机这个行业,中级技工证书有什么意义吗?
  8. 涂鸦模组二次开发RTL8720CF
  9. linux 无法创建文件,无法创建文件系统以及无法创建PV时怎么办?
  10. android 阅读器自动滚动,Android编程实现小说阅读器滑动效果的方法