試題 c: 蛇形填數本題總分:10 分
如下圖所示,小明用從 1 開始的正整數「蛇形」填充無限大的矩陣。1 2 6 7 15 …
3 5 8 14 …
4 9 13 …
10 12 …
11 …
…容易看出矩陣第二行第二列中的數是 5。請你計算矩陣中第 20 行第 20 列的數是多少?
這是一道結果填空的題,你只需要算出結果後提交即可。我們可以在矩陣中尋找一些規律本題的結果為乙個整數,在提交答案時只填寫這個整數,填寫多餘的內容將無法得分。
先設定乙個範圍較大的矩陣
(在這裡設定的是200 * 200)
規律:
可以斜著來看矩陣那麼我們就可以利用這個規律來實現矩陣當i為偶數的時候,數字都是從左下向右上填充的
當i為奇數的時候,數字都是從右上向左下填充的。
迴圈次數從0開始
設定填入的數字num為0
如果i為偶數:
偶數序列第乙個數固定為左下同樣如果i為奇數:設定座標縱座標,橫座標
按順序縱座標減一,橫座標加一
即能實現從左下到右上進行遍歷
在遍歷的同時填入的數字num + 1,計算本序列填入的數字個數count
填入的數字個數即為序列縱座標的值
奇數序列第乙個數固定為右上設定座標縱座標,橫座標
按順序縱座標加一,橫座標減一
即能實現從右上到左下進行遍歷
在遍歷的同時填入的數字num + 1,計算本序列填入的數字個數count
填入的數字個數即為序列橫座標的值
import numpy as np
data = np.zeros(
(200
,200))
num =
0for i in
range(60
):if i %2==
0:count =
0 x, y = i,
0while count <= i:
num +=
1 data[x]
[y]= num
count +=
1 x -=
1 y +=
1elif i %2!=
0:count =
0 x, y =
0, i
while count <= i:
num +=
1 data[x]
[y]= num
count +=
1 x +=
1 y -=
1print
(data[19]
[19])
761.0
藍橋杯真題 2023年藍橋杯 蛇形填數
如下圖所示,小明用從 1 開始的正整數 蛇形 填充無限大的矩陣。1 2 6 7 15 3 5 8 14 4 9 13 10 12 11 1 容易看出矩陣第二行第二列中的數是 5。請你計算矩陣中第 20 行第 20 列的數是多少?通過觀察排列規律可以發現要尋找的數可以通過所在的行數,列數,斜排 右上 ...
藍橋杯python每日一題 特殊回文數
試題 基礎練習 資源限制 時間限制 1.0s 記憶體限制 512.0mb 問題描述 123321是乙個非常特殊的數,它從左邊讀和從右邊讀是一樣的。輸入乙個正整數n,程式設計求所有這樣的五位和六位十進位制數,滿足各位數字之和等於n 輸入格式 輸入一行,包含乙個正整數n。輸出格式 按從小到大的順序輸出滿...
藍橋杯題 方格填數
填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。我的思路是 先把這10個數進行排列,然後把排列後的數字存入乙個二維陣列b 3 4 中 2 用int c 8...