解封我的CSDN...

 开学后沉迷学习无法自拔(其实是懒),忘记写博客来记录我的学习生涯,直至现在寒假了才想起,现决定解封我的CSDN。

刚刚看了下我的第一篇博客(我都差点忘记我写过博客。。。),当时初学编程,那道题的思路完全是错的...... 最恐怖的是还有

几十个人看了那篇QAQ。 大一第一学期已经过去了,学了一个学期ACM,我越来越觉得师兄刚开始说的"人与人之间的差

距有时候可能比人比猪还大"这句话特别在理,同届生恐怖得像魔鬼一样。。。 虽然我现在还不能望其项背,但我还是会坚持

下去。解封之际,先附上上篇博客中那道五个多月前难住我的题的实现代码。

先复述一遍题目

 输入一个n,输出一个螺旋向内递增的从1到n^2的n阶方阵(如下图)


解封我的CSDN..._第1张图片

代码如下:

#include
#include
using namespace std;

int map[10][10];
void build(int n)
{ 
    int x = 0;
    int y = 0;
    int tot = map[x][y] = 1;
    while(tot=1&&!map[x][y-1])
            map[x][--y] = ++tot;
        while(x>=1&&!map[x-1][y])
            map[--x][y] = ++tot;
    }
}


void show(int n)
{
    for(int i=0;i>n)
    {
        memset(map,0,sizeof(map));//没填入的都清0,方便边界判断 
        build(n);
        show(n);
        cout<






你可能感兴趣的:(ACM水题)