矩陣順時針旋轉90 180 270

2021-06-28 15:42:14 字數 1372 閱讀 3852

問題及**:

/*

* 檔名稱:sdoj.cpp

* 作 者:李楠

* 完成日期:2023年2月7日

* 版 本 號:v1.0

** 問題描述:矩陣a在順時針旋轉一定角度後是否和矩陣b完全一樣

* 輸入描述:有多組輸入。

每組輸入先輸入乙個整數n(n <= 50),代表矩陣的大小。

接下來的n行,每行有n個整數。代表矩陣a。

再接下來的n行n個整數代表矩陣b。

* 程式輸出:如果矩陣a在旋轉一定角度後能和矩陣b完全一樣則輸出yes,否則輸出no。

*/#include using namespace std;

int main()

{ int first[51][51];

int second[51][51];

int third[51][51];

int four[51][51];

int five[51][51];

int i,j,k;

int n,l=1;

while(cin>>n&&n<=50&&n>1)

{k=n-1;

for(i=0;i>first[i][j];

for(i=0;i>third[i][j];

for(i=0;i執行結果:

知識點總結:

1.從行的角度看:

原矩陣的第一行,變成了目標矩陣的最後一列。

原矩陣的第二行,變成了目標矩陣的倒數第二列。

原矩陣的第三行,變成了目標矩陣的倒數第三列。

原矩陣的第四行,變成了目標矩陣的倒數第四列。

.......

2.從列的角度看:

原矩陣的第一列,變成了目標矩陣的第一行,數字的方向相反。

原矩陣的第二列,變成了目標矩陣的第二行,數字的方向相反。

原矩陣的第三列,變成了目標矩陣的第三行,數字的方向相反。

原矩陣的第四列,變成了目標矩陣的第四行,數字的方向相反。

...

由此可知,矩陣順時針旋轉90的結果,就是把行變成列,把列變成行。

同理,逆時針旋轉90°也是這樣…

順時針旋轉180°:

如:1  2  3

4  5  6

7  8  9

旋轉後為:

9  8  7

6  5  4

3  2  1

可知:旋轉後的順序是原來的逆序,那麼就好寫了~~

學習心得:

好吧…矩陣旋轉角度的我剛剛弄懂… 

順時針旋轉矩陣

有乙個nxn整數矩陣,請編寫乙個演算法,將矩陣順時針旋轉90度。給定乙個nxn的矩陣,和矩陣的階數n,請返回旋轉後的nxn矩陣,保證n小於等於300。測試樣例 1,2,3 4,5,6 7,8,9 3返回 7,4,1 8,5,2 9,6,3 簡單題 coding utf 8 class rotate ...

1 3 順時針旋轉矩陣

1 2 題目描述 3有乙個nxn整數矩陣,請編寫乙個演算法,將矩陣順時針旋轉90度。4給定乙個nxn的矩陣,和矩陣的階數n,請返回旋轉後的nxn矩陣,保證n小於等於300。5測試樣例 6 1,2,3 4,5,6 7,8,9 3 7返回 7,4,1 8,5,2 9,6,3 8 9 10將矩陣順時針旋轉...

順時針旋轉矩陣 矩陣查詢

有乙個nxn整數矩陣,請編寫乙個演算法,將矩陣順時針旋轉90度。給定乙個nxn的矩陣,和矩陣的階數n,請返回旋轉後的nxn矩陣,保證n小於等於300。示例1輸入 1,2,3 4,5,6 7,8,9 3 返回值 7,4,1 8,5,2 9,6,3 class solution return arr 請...