計算機中的圖像表示可以用一個矩陣來表示,爲了旋轉一個圖像,只需要將對應的矩陣旋轉即可。
接下來n行每行包含m個整數,表示輸入的圖像。
1 5 3
3 2 4
5 2
1 3
稍微有點坑的地方就是矩陣中【空格】的保留,而且行末不應該有多餘的空格。
但坑了我最久的並不是格式,而是CCF判題系統自帶個一個限制:當x不是0時, if(x) 和 if (x != 0) 的判定結果好像並不相同。
具體是怎樣的區別我也不知道(雖然理論上是一樣的),但最後只有改了這裏才能過,前面省勁的寫法只有大大的WA...
下面附代碼:
#include<iostream>
using namespace std;
#define MAX 1000+5
int map[MAX][MAX];
int main(){
int m, n;
cin >> n >> m;
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
cin >> map[m-j-1][i];
}
}
for (int i = 0; i < m; i++){
for (int j = 0; j < n; j++){
if (j != 0) cout << " ";
cout << map[i][j];
}
cout << endl;
}
return 0;
}