2228 : 学霸题

时间限制:1 Sec 内存限制:128 MiB
提交:3 答案正确:1

提交 状态 讨论区

题目描述

最近学长对学霸题上瘾了,所以也想跟各位学霸出一道学霸题,但是今天我们不来数正方体,我们来对正方形进行一系列操作。 n乘n 的二维数组可以看作一个正方形把 1 到 n^2 的正整数按照从左往右,从上至下的顺序填入初始的二维数组中。我们可以将 n乘n二维数组上将一个奇数阶方阵按照顺时针或者逆时针旋转90°。
现在告诉你方阵大小和如何操作和操作次数,请你输出操作后矩阵的结果。(头顶标注法对这道题并不管用)

输入

第一行两个整数 n , m ,表示方阵大小和魔法施放次数。
接下来m行,每行 4 个整数 x , y , r , z 表示在这次操作中,会把以第x行第y列为中心的 2r+1 阶矩阵按照某种时针方向旋转,其中 z = 0 表示顺时针,z=1 表示逆时针。
其中 500≤ n , m ≤ 500,满足 1 ≤ x−r ≤ x+r ≤ n,1 ≤ y−r ≤ y+r ≤ n 。

输出

输出n行,每行n个用空格隔开的数,表示最终所得的矩阵。

样例输入

复制
5 4
2 2 1 0
3 3 1 1
4 4 1 0
3 3 2 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

提示


			

来源