传统题 1000ms 128MiB

方阵变换

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

方阵变换

题目描述

育华学校为了庆祝建校周年,准备举办一场盛大的校园活动展示。在活动筹备中,学生会的同学们负责组织一个独特的方阵表演环节。他们将使用一个 n×nn×n 的大型方阵道具,这个方阵被划分为一个个小区域,每个区域可以安排不同的表演元素。

一开始,从 11n2n^2 的数字依次被分配到方阵的各个小区域,分配顺序是从左往右、从上至下,这些数字代表着不同的表演内容序号。

在活动排练过程中,为了达到最佳的视觉效果,需要对部分区域的方阵进行旋转操作。学生会的负责人小星掌握了一种变换技巧,她能够将以方阵中第 xx 行第 yy 列为中心的 2r+12r + 1 阶奇数阶子方阵,按照顺时针或者逆时针方向旋转 9090^{\circ}

现在,她把整个排练过程中的方阵旋转操作顺序记录了下来,希望你能帮她推算出经过一系列操作后,最终的方阵状态,以便更好地规划后续的排练和表演。

输入格式

第一行输入两个整数 nnmm 。其中,nn 表示整个方阵的大小,即方阵有 nnnn 列;mm 表示在排练过程中需要进行的方阵旋转操作的总次数。

接下来 mm 行,每行包含 44 个整数 x,y,r,zx,y,r,z 。这里的 xxyy 代表方阵中的某一行和某一列,以该位置 (x,y)(x,y) 为中心,确定一个 2r+12r + 1 阶的奇数阶子方阵进行旋转操作;zz 用于指定旋转方向,当 z=0z = 0 时,代表将选定的子方阵顺时针旋转 9090^{\circ} ;当 z=1z = 1 时,则表示逆时针旋转 9090^{\circ}

输出格式

输出 nn 行,每行包含 nn 个整数,整数之间用空格隔开。这 n×nn×n 个整数呈现的就是经过 mm 次旋转操作后,最终的方阵状态,其中每个整数对应着最终方阵中每个小区域所代表的表演内容序号。

输入输出样例 #1

输入 #1

5 4
2 2 1 0
3 3 1 1
4 4 1 0
3 3 2 1

输出 #1

5 10 3 18 15
4 19 8 17 20
1 14 23 24 25
6 9 2 7 22
11 12 13 16 21

说明/提示

  1. 对于 50% 的测试数据:每次旋转操作所涉及的子方阵阶数满足 r=1r = 1 ,即每次只对 3×33×3 的小方阵进行旋转。这部分数据相对简单,用于初步测试解题思路和程序的基本功能。
  2. 对于 100% 的测试数据: 1n,m5001\leq n,m\leq500 。同时,为了保证所有的旋转操作都在方阵范围内进行,不会出现越界情况,输入数据还需满足 1xrx+rn1\leq x - r\leq x + r\leq n 以及 1yry+rn1\leq y - r\leq y + r\leq n 。这意味着在育华学校的这个方阵表演规划场景中,无论进行多少次旋转操作,所涉及的子方阵都完全在给定的 n×nn×n 大型方阵内部,确保了问题的合理性和可解性 。

育华周赛 第十五期

未参加
状态
已结束
规则
乐多
题目
6
开始于
2025-4-18 18:00
结束于
2025-4-21 0:00
持续时间
54 小时
主持人
参赛人数
14