23:二维数组回形遍历
- 总时间限制:
- 1000ms 内存限制:
- 65536kB
- 描述
-
给定一个row行col列的整数数组array,要求从array[0][0]元素开始,按回形从外向内顺时针顺序遍历整个数组。如图所示:
输入 - 输入的第一行上有两个整数,依次为row和col。 余下有row行,每行包含col个整数,构成一个二维整数数组。 (注:输入的row和col保证0 < row < 100, 0 < col < 100) 输出
- 按遍历顺序输出每个整数。每个整数占一行。 样例输入
-
4 41 2 3 412 13 14 511 16 15 610 9 8 7
样例输出 -
12345678910111213141516
来源 - 北京大学2009年医学部练习题
- 这道题的关键,在于
- 1.如何找到四个方向
- 2.四个方向分别应该怎么走
- 3.方向转换的判断条件
-
1 #include
2 #include 3 #include 4 #include 5 using namespace std; 6 int a[10001][10001]; 7 int b[10001][10001]; 8 int now=4;// 1上 2下 3左 4右 9 int tot=1;10 int main()11 {12 int n,m;13 cin>>n>>m;14 int i=1,j=1;15 for(int i=1;i<=n;i++)16 {17 for(int j=1;j<=m;j++)18 {19 cin>>a[i][j];20 }21 }22 cout< <