解题思     第一眼看到这个题直接自闭,不知道怎么做,然后看了下题解,看不懂,然后自闭几天后,刷题又遇到了,最终AC,主要是分析每一行和每一列的递增关系。

      从图中可以看出行是 3 5 7这样递增,规律就是1+2*n的递增,

      然后列就是1 3 5规律就是1+2*n-2

 


注意事项:cout  没有 printf 快

参考代码:

      #include<iostream>
   #include<cstring>
   using namespace std;
   char a[126][126];
   int main()
    {
      int n;
     cin>>n;
     int m=n*4+5;
     n=n+1;
     memset(a,'.',sizeof(a));
     for(int k=1;k<=n;k++)
       {
       for(int i=1+2*k;i<=m-2*k;i++)
       for(int j=1+2*k-2;j<=m-2*k+2;j++)
          a[i][j]='$',a[j][i]='$';
       for(int i=1+2*k+1;i<=m-2*k-1;i++)
       for(int j=1+2*k-1;j<=m-2*k+1;j++)
       a[i][j]='.',a[j][i]='.';
       }
      for(int i=1;i<=m;i++)
       {
         for(int j=1;j<=m;j++)
         printf("%c",a[i][j]);
         printf("\n");
       }
         return 0;
      }


点赞(1)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论