756. 蛇形矩阵
题目链接:https://www.acwing.com/problem/content/758/

代码
#include<iostream>
#include<algorithm>
using namespace std;
int x[110][110];
int main()
{
int m,n,i,j;
cin>>n>>m;
int l=0,r=m-1,t=0,b=n-1;
int k=1;
while(l<=r && t<=b)
{
for(i=l;i<=r;i++)
x[t][i]=k++;
for(i=t+1;i<=b;i++)
x[i][r]=k++;
for(i=r-1;i>=l && t<b ;i--) //不限制t,b的话会多输出 下边限制l,r同理
x[b][i]=k++;
for(i=b-1;i>t && l<r ;i--)
x[i][l]=k++;
l++; r--; t++; b--;
}
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
cout<<x[i][j]<<" ";
cout<<endl;
}
return 0;
}
本文来自博客园,作者:斯文~,转载请注明原文链接:https://www.cnblogs.com/zhiweb/p/15483376.html

浙公网安备 33010602011771号