8328: 二维码
[Creator : ]
Description
在日常生活中,我们经常会用到二维码。可以发现,无论以怎么的姿势进行扫码,只要二维码在自己设备的扫码区域内(且自身设备联网),均可以识别二维码。
这是因为二维码内有三个定位点(图中三个被框起来的黑点),根据定位点将整个二维码进行旋转,再识别信息。
上述四种情况最后选择的结果为:
现在,我们使用 $n \times n$ 的二维字符数组模拟二维码,其中 * 表示二维码中的定位点,保证二维码字符数组中只有三个 * 且在矩阵的顶角处。
例如 $3 \times 3$ 的二维码为
这是因为二维码内有三个定位点(图中三个被框起来的黑点),根据定位点将整个二维码进行旋转,再识别信息。
上述四种情况最后选择的结果为:
现在,我们使用 $n \times n$ 的二维字符数组模拟二维码,其中 * 表示二维码中的定位点,保证二维码字符数组中只有三个 * 且在矩阵的顶角处。
例如 $3 \times 3$ 的二维码为
*1* 234 *56你的任务是输出二维码的最终旋转结果,即三个 * 分别在左上、右下、左下。
Input
第一行一个正整数 $n\ (3 \leq n \leq 10^3)$。
接下来 $n$ 行,每行 $n$ 个字符,表示该二维码。第 $i$ 行的第 $j$ 个字符为 a[i][j]。保证字符只有 * 和 0 ~ 9。
接下来 $n$ 行,每行 $n$ 个字符,表示该二维码。第 $i$ 行的第 $j$ 个字符为 a[i][j]。保证字符只有 * 和 0 ~ 9。
Output
输出 $n$ 行,每行 $n$ 个字符,表示旋转正确后的二维码。
Sample 1 Input
3
*1*
234
*56
Sample 1 Output
*1*
234
*56
Sample 2 Input
5
1234*
56789
12345
67890
*012*
Sample 2 Output
*210*
09876
54321
98765
*4321
Sample 3 Input
5
*950*
48492
37381
26270
1516*
Sample 3 Output
*210*
09876
54321
98765
*4321
5
1234*
56789
12345
67890
*012*
*210*
09876
54321
98765
*4321
Sample 4 Input
5
*6151
07262
18373
29484
*059*
Sample 4 Output
*210*
09876
54321
98765
*4321