ZCMU - 2065: 打印十字图
发布日期:2021-06-30 23:40:39 浏览次数:2 分类:技术文章

本文共 2156 字,大约阅读时间需要 7 分钟。

题目链接:

 

题目大意:略。

 

解题思路:

 

AC 代码

#include
#include
#define mem(a,b) memset(a,b,sizeof a);#define INF 0x3f3f3f3fusing namespace std;typedef long long ll;int main(){ int n; while(~scanf("%d",&n)) { int outlen=n*4+1, len=n*2, klen=4*n-1, cnt=-2, jlen=0; printf(".."); for(int i=1;i<=outlen;i++) printf("$"); printf("..\n"); for(int i=0; i
=0 && cnt%2==0) jlen++; // pre $. for(int j=1;j<=jlen;j++) { printf("$."); } if(i%2==1) { printf("$$$."); for(int k=1;k<=klen;k++) printf("$"); printf(".$$$"); } else { printf("..$"); for(int k=1;k<=klen;k++) printf("."); printf("$.."); } // next $. for(int j=1;j<=jlen;j++) { printf(".$"); } puts(""); } for(int i=1;i<=n;i++) printf("$."); printf("..$.."); for(int i=1;i<=n;i++) printf(".$"); puts(""); for(int i=1;i<=n;i++) printf("$."); printf("$$$$$"); for(int i=1;i<=n;i++) printf(".$"); puts(""); for(int i=1;i<=n;i++) printf("$."); printf("..$.."); for(int i=1;i<=n;i++) printf(".$"); puts(""); cnt=-2, klen+=2; for(int i=len-1; i>=0; i--,cnt++,klen+=2) { if(cnt>=0 && cnt%2==0) jlen--; // pre $. for(int j=1;j<=jlen;j++) { printf("$."); } if(i%2==1) { printf("$$$."); for(int k=1;k<=klen;k++) printf("$"); printf(".$$$"); } else { printf("..$"); for(int k=1;k<=klen;k++) printf("."); printf("$.."); } // next $. for(int j=1;j<=jlen;j++) { printf(".$"); } puts(""); } printf(".."); for(int i=1;i<=outlen;i++) printf("$"); printf("..\n"); } return 0;}

 

转载地址:https://lux-sun.blog.csdn.net/article/details/81082488 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:ZCMU - 1978: 调酒壶里的酸奶
下一篇:HDU - 2018杭电ACM集训队单人排位赛 - 3 - Problem H. Dominoes

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月12日 22时21分55秒