问题描述 |
---|
给你一个$$n×n$$的方阵(保证$$n$$是一个偶数),其中最外层记为第$$1$$圈,次外层记为第$$2$$圈,$$...$$,最内层记为第$$\dfrac{n}{2}$$圈。 如下给出一个$$6×6$$的方阵,并把第$$1$$圈、第$$2$$圈和第$$3$$圈分别用黄色、橙色和绿色标出。 现在我们用一些数字把这个方阵填满,并定义一种旋转操作。 给出两个整数$$x$$和$$y$$: 1、如果$$y$$是非负整数,你需要把方阵的第$$x$$圈上的所有数字沿顺时针的方向移动$$y$$次。 2、如果$$y$$是一个负数,你需要把方阵的第$$x$$圈上的所有数字沿逆时针的方向移动$$-y$$次。 下面是一个旋转的例子,例如给出的两个整数分别是$$2$$和$$3$$,意味着我们要把该方阵第$$2$$圈上的所有数字沿顺时针的方向移动$$3$$次。 现在,给你原始方阵以及一些旋转操作,请你输出最后方阵的样子。 |
输入描述 |
第一行是一个正偶数$$n$$表示方阵的大小。($$2 \leq n \leq 100$$) 接下来$$n×n$$个$$int$$范围内的整数表示这个方阵的所有元素。 然后是一个正整数$$m$$表示旋转操作的次数。($$1 \leq m \leq 1000$$) 最后$$m$$行,每行两个整数$$x$$和$$y$$表示一次旋转操作。($$1 \leq x \leq \dfrac{n}{2}, -10^9 \leq y \leq 10^9$$) |
输出描述 |
一个经过$$m$$次旋转操作过后的$$n×n$$方阵。输出时,每两个数字用空格隔开,最后一个数字后面没有空格。 |
样例输入复制样例 |
6 1 2 3 4 5 6 7 8 9 0 9 8 3 2 4 5 6 7 2 5 7 8 2 4 4 2 4 9 1 0 9 6 8 7 3 1 3 2 3 1 1 3 -1 |
样例输出 |
7 1 2 3 4 5 3 2 5 2 8 6 2 4 5 8 9 8 4 9 4 7 0 7 9 1 2 6 9 4 6 8 7 3 1 0 |
相关 |