方陣填充自然數

2021-10-05 21:53:42 字數 1738 閱讀 8421

時間限制: 1 sec  記憶體限制: 125 mb

提交次數: 537  解決: 64

附加描述

在乙個n*n的方陣中,填入1,2,……n*n個數,並要求構成如下的格式:

例如:n=5

13 14 15 16  1

12 23 24 17  2

11 22 25 18  3

10 21 20 19  4

9  8  7  6  5

n=616 17 18 19 20  1

15 30 31 32 21  2

14 29 36 33 22  3

13 28 35 34 23  4

12 27 26 25 24  5

11 10  9  8  7  6

輸入

每個測試檔案只包含一組測試資料,每組輸入乙個n。

輸出

輸出構成的方陣。

樣例輸入 

5
樣例輸出 

13 14 15 16 1

12 23 24 17 2

11 22 25 18 3

10 21 20 19 4

9 8 7 6 5

提示

n階方陣範圍 1~100

使用二維陣列儲存方陣資料。

注意n<=3時候的資料列印間隔。

其原理如圖所示一圈圈的填充,

//先填充外圍

int i;

int begin = offset;

int end = offset + size -1;

for (i = 0;i < size - 1;i++)

//再遞迴填充核心(小了一圈的子矩陣)

Python Numpy 自然數填充陣列

今天學習numpy時,想到了乙個小問題。在numpy中,隨機生成array是比較容易的,用np.random.rand即可。如下 a np.random.rand 3,4 可得 array 0.05301444,0.88175316,0.01061948,0.52498083 0.51335312,...

自然數拆分

描述 description 輸入自然數n,然後將其拆分成由若干數相加的形式,參與加法運算的數可以重複。輸入格式 inputformat 輸入只有乙個整數n,表示待拆分的自然數n。n 80 輸出格式 outputformat 輸出乙個數,即所有方案數 樣例輸入 sampleinput 複製資料 7 ...

自然數拆分

問題描述 自然數的拆分 任何乙個大於1的自然數n,總可以拆分成若干個自然數之和,並且有多種拆分方法。試求 n的所有拆分。例如自然數5,可以有如下一些拆分方法 5 1 1 1 1 1 5 1 1 1 2 5 1 2 2 5 1 4 5 2 3 注意,本題中n拆分出來的數x的範圍是1 x整數劃分可以參考...