螺旋的矩陣
time limit: 1000 ms memory limit: 32768 k
total submit: 30(19 users) total accepted: 16(16 users) rating: special judge: no
description
給出乙個奇數 n,我們可以把數字 1 到 n*n 放到乙個螺旋的矩陣中。
下圖給出了從1到25的放法:
1 2 3 4 5
---------------------
1| 21 22 23 24 25
2| 20 7 8 9 10
3| 19 6 1 2 11
4| 18 5 4 3 12
5| 17 16 15 14 13
正如我們看到的,矩陣中的每個位置都對應乙個唯一的整數,例如第一行第一列是乙個21,第5行第2列是乙個16。
現在,給出乙個整數 n(1<=n<=32768),和乙個整數m(1<=m<=n*n),你需要輸出整數 m的位置。
input
第一行是乙個整數t,表示資料的組數,接下來的t行每行兩個整數n, m。
output
每行輸出兩個整數,分別表示m所在的行和列。
sample input
33 9
5 21
5 16
sample output
1 31 1
5 2
這次是順時針外旋矩陣,不能模擬了,時間會炸的,必須得算出來了
#include
int main()
int qu=(z*z-(z-2)*(z-2))/4;///所求元素所在那圈,每邊的元素個數
int ji=(z-2)*(z-2);///上一層最後乙個數
n-=ji;///所求元素,離所在層數開始的那個數字的差值
if(n<=qu)///差值小於每邊元素,則在右邊區域
else
if(n<=2*qu)///下方
else
if(n<=3*qu)///左邊
else
///上方
}}
HRBUST 1564 螺旋矩陣 DFS
螺旋矩陣 time limit 1000 ms memory limit 10240 k total submit 282 78 users total accepted 81 72 users rating special judge no description 對於給定的乙個數n,要你列印n ...
hrbust 1564 螺旋矩陣 dfs過
螺旋矩陣 time limit 1000 ms memory limit 10240 k total submit 276 77 users total accepted 79 71 users rating special judge no description 對於給定的乙個數n,要你列印n ...
螺旋矩陣n m的規律
思路 將矩陣分成巢狀的很多個圈 這樣每乙個圈的相對位置的值都和第乙個位置的值有關係。分別求出每乙個圈的第乙個位置就好啦!include using namespace std define pb emplace back define mp make pair define eps 1e 8 typ...