2025年蓝桥杯青少省赛-t4
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
矩阵圈层交错旋转问题
问题描述
给定一个 n x n 的二维整数矩阵,需要对矩阵的每一“圈层”进行交错旋转(顺时针和逆时针交替)。具体规则如下:
- 
圈层定义:
- 从最外层开始向内逐层定义,最外层为第1圈层,向内依次为第2圈层、第3圈层等。
 - 若 n 为奇数,最中心的单个元素为最内层圈层,且不旋转(值不变)。
 
 - 
旋转方向:
- 第1圈层:顺时针旋转90度。
 - 第2圈层:逆时针旋转90度。
 - 第3圈层:顺时针旋转90度。
 - 以此类推,方向交替进行。
 
 - 
旋转范围:
- 每圈层的旋转仅影响该圈层内的元素。
 
 
示例
- 
输入(n=4):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 - 
输出:
13 9 5 1 14 7 11 2 15 6 10 3 16 12 8 4 - 
解释:
- 第1圈层(最外层)顺时针旋转90度。
 - 第2圈层(内层)逆时针旋转90度。
 
 
输入要求
- 第一行输入一个正整数 n(2 ≤ n ≤ 100),表示矩阵的行数和列数。
 - 接下来 n 行,每行输入 n 个整数(-1000 ≤ 整数 ≤ 1000),表示矩阵元素,整数间用空格隔开。
 
输出要求
输出 n 行,每行 n 个整数,表示旋转后的矩阵,整数间用空格隔开。
关键点
- 圈层划分:按从外到内的顺序逐层处理。
 - 旋转方向交替:奇数圈层顺时针,偶数圈层逆时针。
 - 中心元素:若 n 为奇数,中心元素不旋转。
 
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
13  9  5  1
14  7  11 2
15  6  10 3
16 12  8  4