
Problem G: 输出回字形
发布日期:2021-05-10 10:41:16
浏览次数:12
分类:精选文章
本文共 2017 字,大约阅读时间需要 6 分钟。
Problem G: 输出回字形
描述:
输出n阶的回字形。定义1、2、3阶的回字形如下:
1阶回字形:@@@ @ @ @@@
2阶回字形:@@@@@@@ @ @ @ @@@ @ @ @ @ @ @ @@@ @ @ @ @@@@@@@
3阶回字形:@@@@@@@@@@@ @ @ @ @@@@@@@ @ @ @ @ @ @ @ @@@ @ @ @ @ @ @ @ @ @ @ @@@ @ @ @ @ @ @ @ @@@@@@@ @ @ @ @@@@@@@@@@@
输入:
输入一个整数n,n取1~9。
输出:
输出对应的图形。
示例输入:
2
示例输出:
@@@@@@@ @ @ @ @@@ @ @ @ @ @ @ @@@ @ @ @ @@@@@@@
HINT:
百度上有人说用for循环写可能要花几个小时,我算是尝试了很多次还是不会,后来学到了坐标法这个神奇的方法,终于明白了生成图形的技巧。
这个是大佬的链接,感谢大佬!
大佬的AC码:
#include #include #include #include #include int main(){ int x,y,n; scanf("%d",&n); for(x=-(2*n-1);x<=2*n-1;x++){ for(y=-(2*n-1);y<=2*n-1;y++){ if(x==0 && y==0) putchar(' '); else if(abs(x)%2!=0 && abs(x)>=abs(y)) putchar('@'); else if(abs(y)%2!=0 && abs(y)>abs(x)) putchar('@'); else putchar(' '); } putchar('\n'); } return 0;}
我理解之后自己也写了代码,以左下角为原点:
#include #include int main(){ int x,y,n; scanf("%d",&n); for(x=0;x<3+4*(n-1);x++){ for(y=0; y<3+4*(n-1); y++){ if((x==3+4*(n-1)-1||x==0) && y>=0 || x>0 && (y==0||y==3+4*(n-1)-1)) putchar('@'); else if(y%2==0 && (x>=3+4*(n-1)-1-y && x<=y) || y%2==0 && (x>=y && x<=3+4*(n-1)-1-y) || x%2==0 && y<=x || x%2==0 && y>=x) putchar('@'); else putchar(' '); } putchar('\n'); } return 0;}
经过调试,优皇用了数组写出简洁的AC码:
#include #include char a[35][35];int main(){ int n, flag = 1; scanf("%d", &n); int min = 0, max = 4 * n - 2; while (min <= max){ if (flag == 1) for (int x = min; x <= max; x++) for (int y = min; y <= max; y++) a[x][y] = '@'; else for (int x = min; x <= max; x++) for (int y = min; y <= max; y++) a[x][y] = ' '; max--; min++; flag = -flag; } for(int x=0;x<=4*n-2;x++){ for(int y=0; y<=4*n-2;y++) putchar(a[x][y]); puts(""); } return 0;}
优皇用数组写出的精炼AC码,完美解决了问题。
Like 调试完技,分享你的思考过程!记住,让善良的心永远在你❤️
发表评论
最新留言
表示我来过!
[***.240.166.169]2025年04月07日 13时12分26秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
微信自定义分享ios无效
2019-03-07
this.$router.push不起作用(this指向错误)
2019-03-07
Sublime安装px转rem插件
2019-03-07
retrofit --post请求
2019-03-07
IDEA上传Jar
2019-03-07
SpringBoot工程临时加一个分页的yml文件没有生效
2019-03-07
搭建的SpringMVC项目,404错误,确保代码正确的前提,可能是jar包没导进去
2019-03-07
flume使用中的一些常见错误解决办法 (地址已经使用)
2019-03-07
基于递归的全排列
2019-03-07
前端笔试题总结(三) - CSS篇
2019-03-07
C语言字符型、整型和变量的长度
2019-03-07
OpenCV camshift目标追踪
2019-03-07
Redis缓存穿透和缓存雪崩
2019-03-07
spring 的@ComponentScan 理解
2019-03-07
C++ e 神秘数组——vector
2019-03-07
day04_CSS选择器
2019-03-07
js 获取时间戳的方法
2019-03-07
C++ 底层语言的信仰-指针分类
2019-03-07
DFS
2019-03-07