hrbust 2192 螺旋的矩陣

2022-09-17 14:12:20 字數 1167 閱讀 9986

螺旋的矩陣

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...