有一個 $n \times n$ 的二維陣列,你可以把它逆時針旋轉 $90 \times k$ 度嗎?
為了考驗你,請你不要在程式碼中使用 [
、]
或 <:
、:>
(冷知識:它們是 []
的替代寫法)運算子。
請在程式碼第一行引入標頭檔 lib0633.h
,並實作以下函數:
void rotate(int **p, int n, int k)
:
注意請勿在你的程式碼中宣告 main()
函數,或是進行任何輸入輸出,否則將會發生不可預期的結果。
以下是一個可以通過編譯但不一定會得到 AC 的範例程式碼:
#include "lib0633.h"
void rotate(int **p, int n, int k){
}
請勿進行任何輸入輸出,否則將會發生不可預期的結果。
範例範入與測試用標頭檔的輸入格式為:第一行有兩個整數 $n,k$,接下來 $n$ 行中,第 $i$ 行有 $n$ 個整數,分別是 $p[i][0],p[i][1],\dots,p[i][n-1]$。
請勿進行任何輸入輸出,否則將會發生不可預期的結果。
範例範出與測試用標頭檔的輸出格式為:輸出 $n$ 行,第 $i$ 行有 $n-1$ 個整數,分別是 $p[i][0],p[i][1],\dots,p[i][n-1]$。
這裡提供一份本地測試用的標頭檔,你可以將其複製下來存檔成 lib0633.h
後 #include "lib0633.h"
做使用。但請注意,這只是測試用的標頭檔,一些與解題無關的行為將會與 judge 上的有所不同,因此請不要嘗試任何與解題無關的行為,很可能會導致各種不可預期的後果。
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~2 | 範例測資 | 0 |
2 | 0~14 | 無額外限制 | 100 |