原題鏈結
題目描述
輸入整數n,輸出乙個n階的回字形二維陣列。
陣列的最外層為1,次外層為2,以此類推。
輸入格式
輸入包含多行,每行包含乙個整數n。
當輸入行為n=0時,表示輸入結束,且該行無需作任何處理。
輸出格式
對於每個輸入整數n,輸出乙個滿足要求的n階二維陣列。
每個陣列佔n行,每行包含n個用空格隔開的整數。
每個陣列輸出完畢後,輸出乙個空行。
資料範圍
0≤n≤100
輸入樣例
123
450
輸出樣例
1
1 11 11 1 1
1 2 1
1 1 1
1 1 1 1
1 2 2 1
1 2 2 1
1 1 1 1
1 1 1 1 1
1 2 2 2 1
1 2 3 2 1
1 2 2 2 1
1 1 1 1 1
解題思路
看第一眼這是乙個很有規律矩陣
分析一下, woc 這怎麼做, 好麻煩
那就從頭分析吧
先看這個矩陣有什麼規律
發現矩陣中相同的數字圍成了乙個正方形
由中心散開, 數字依次遞減
只觀察一種數字, 發現每個元素到邊界的距離是一樣的.
然後可以發現這個距離是到上下左右邊界的距離的最小值
也就是說矩陣中的每個數字都符合
m[i][j]=min(min(左界距離, 右界距離), min(上界距離, 下界距離))
接下來除錯一下, 就可以了
注意每組樣例之間的空行
已過**
# include
using
namespace std;
int main (
) cout<}return0;
}
AcWing 754平方矩陣
題目描述 輸入整數n,輸出乙個n階的二維陣列。陣列的形式參照樣例。輸入格式 輸入包含多行,每行包含乙個整數n。當輸入行為n 0時,表示輸入結束,且該行無需作任何處理。輸出格式 對於每個輸入整數n,輸出乙個滿足要求的n階二維陣列。每個陣列佔n行,每行包含n個用空格隔開的整數。每個陣列輸出完畢後,輸出乙...
AcWing 754 平方矩陣 II
輸入整數n,輸出乙個n階的二維陣列。陣列的形式參照樣例。輸入格式 輸入包含多行,每行包含乙個整數n。當輸入行為n 0時,表示輸入結束,且該行無需作任何處理。輸出格式 對於每個輸入整數n,輸出乙個滿足要求的n階二維陣列。每個陣列佔n行,每行包含n個用空格隔開的整數。每個陣列輸出完畢後,輸出乙個空行。資...
平方矩陣 I
輸入整數n,輸出乙個n階的回字形二維陣列。陣列的最外層為1,次外層為2,以此類推。輸入格式 輸入包含多行,每行包含乙個整數n。當輸入行為n 0時,表示輸入結束,且該行無需作任何處理。輸出格式 對於每個輸入整數n,輸出乙個滿足要求的n階二維陣列。每個陣列佔n行,每行包含n個用空格隔開的整數。每個陣列輸...