#13821: 用 Python 解題心得


weiye (weiye)

學校 : 國立文華高級中學
編號 : 16127
來源 : [61.216.106.3]
最後登入時間 :
2023-03-07 11:02:39

直接做會超過時間。

思考關鍵一:一串數列有初始值,而且每項都只跟前三項有關,數列的結果又 mod 10007,所以在有限的項數之內,此數列必定會開始重複。

採行策略一:利用 Python 先在本機找出此數列每多少項會開始重複,就可以建構一個有限長度的陣列,包含這些不重複的數據。

思考關鍵二:Python 內建只有 list ,單純使用 list 當陣列,會導致記憶體使用需求過多(爆掉),所以需要另外找尋可以節省記憶體,且有效率地保留數字陣列的方法。

#35980: Re: 用 Python 解題心得


712045@st.lths.tc.edu.tw (程式餓靈)

學校 : 嶺東高級中學
編號 : 140198
來源 : [123.194.13.171]
最後登入時間 :
2025-09-23 16:37:21

直接做會超過時間。

思考關鍵一:一串數列有初始值,而且每項都只跟前三項有關,數列的結果又 mod 10007,所以在有限的項數之內,此數列必定會開始重複。

採行策略一:利用 Python 先在本機找出此數列每多少項會開始重複,就可以建構一個有限長度的陣列,包含這些不重複的數據。

思考關鍵二:Python 內建只有 list ,單純使用 list 當陣列,會導致記憶體使用需求過多(爆掉),所以需要另外找尋可以節省記憶體,且有效率地保留數字陣列的方法。

有甚麼更好的方法可以解決記憶體的問題呢?

#35981: Re: 用 Python 解題心得


asnewchien@gmail.com (david)

學校 : 南投縣立旭光高級中學
編號 : 68108
來源 : [114.42.176.221]
最後登入時間 :
2025-10-04 22:52:03

這題循環節 2781668

建表不會爆。

或者可以用矩陣快速冪。