• c++ matrix逆时针螺旋


    题目

    螺旋矩阵是指一个呈螺旋状的矩阵,如一个3*3个螺旋矩阵构造方式如下:

    5 4 3
    6 1 2
    7 8 9
    

    输入一个数n,输出n行n列的螺旋矩阵,每个数字后面一个空格。
    输入:3
    输入:  

    5 4 3
    6 1 2
    7 8 9
    

    AC代码

    #include <bits/stdc++.h>
    using namespace std;
    int a[101][101];
    int main()
    {
    	memset(a,0,sizeof(a));
    	int n;
    	cin>>n;
    	for(int i=1;i<=n;i++)
    	{
    		a[0][i]=a[i][0]=a[n+1][i]=a[i][n+1]=1;
    	}
        int x=n,y=n,p=n*n;
        while(p>=1)
        {
        	while (a[x][y]==0) a[x][y--]=p--;
        	x--;y++;
        	while (a[x][y]==0) a[x--][y]=p--;
        	x++;y++;
        	while (a[x][y]==0) a[x][y++]=p--;
        	x++;y--;
        	while (a[x][y]==0) a[x++][y]=p--;
        	x--;y--;
        }
        for(int i=1;i<=n;i++)
        {
        	for(int j=1;j<=n;j++)
        	{
        		printf("%d ",a[i][j]);
        	}
        	printf("
    ");
        }
    	return 0;
    }
    
    
    
  • 相关阅读:
    大二暑期周总结(四)
    大二暑期周总结(三)
    寒假十七
    寒假十六
    寒假十五
    寒假十四
    寒假十三
    寒假十二
    寒假十一
    寒假十
  • 原文地址:https://www.cnblogs.com/LJA001162/p/11217369.html
Copyright © 2020-2023  润新知