问题描述
旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转 90 度。
计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将 对应的矩阵旋转即可。
输入格式
输入的第一行包含两个整数 n, m(1 ≤ n, m ≤ 100),分别表示图像矩阵 的行数和列数。 接下来 n 行每行包含 m 个不超过 1000 的非负整数,表示输入的图像。
输出格式
输出 m 行,每行包含 n 个整数,表示原始矩阵逆时针旋转 90 度后的矩阵。
样例输入
2 3
1 5 3
3 2 4
样例输出
3 4
5 2
1 3
#include<stdio.h>
int main(int argc, char* argv[]) {
int a[10][10] = { 0 }, b[10][10] = { 0 }, m, n;
int i = 0, j = 0;
scanf("%d%d", &n, &m);
for (i = 0; i < n; ++i)
for (j = 0; j < m; ++j)
scanf("%d", &a[i][j]);
for (i = 0; i < m; ++i)
for (j = 0; j < n; ++j)
b[i][j] = a[j][m-1-i];
for (i = 0; i < m; ++i) {
for (j = 0; j < n; ++j)
printf("%d ", b[i][j]);
printf("\n");
}
return 0;
}