B4378 [蓝桥杯青少年组省赛 2025] 矩阵圈层 90 度交错旋转

题目描述

给定一个 $n \times n$ 的二维整数矩阵,你需要对这个矩阵的每一“圈层”的元素进行交错旋转,规则如下: ### 圈层的定义 - 矩阵从最外层开始,向内逐层定义“圈层”。最外层的元素构成第一圈层,移除最外层后剩余矩阵的最外层元素构成第二圈层,以此类推。 - 如果 $n$ 为奇数,最中心的一个元素属于最内层的圈层,且旋转后其值不改变。 ### 旋转方向 - 最外层(第一圈层)的元素按照顺时针方向整体旋转 $90$ 度。 - 次外层(第二圈层)的元素按照逆时针方向整体旋转 $90$ 度。 - 再往内一层(第三圈层)的元素按照顺时针方向整体旋转 $90$ 度。 - 以此类推,圈层的旋转方向在顺时针和逆时针之间交替进行。 ### 旋转范围 - 每一圈层的旋转仅限于该圈层内的元素。 【原题有 $n=4,6$ 的解释配图】

输入格式

第一行输入一个正整数 $n$($2 \leq n \leq 100$),表示矩阵的行数和列数; 接下来 $n$ 行,每行输入 $n$ 个整数($-1000 \leq$ 整数 $\leq 1000$),整数之间以一个空格隔开。

输出格式

输出 $n$ 行,每行 $n$ 个整数,整数之间以一个空格隔开,表示经过圈层交错旋转 $90$ 度变换后的矩阵。