前往
大廳
主題

ZeroJudge - g500: 109北二2.金庫的密碼 解題心得

Not In My Back Yard | 2022-01-05 00:00:08 | 巴幣 2 | 人氣 205

題目連結:


題目大意:
輸入給定一正整數 N(90 ≦ N ≦ 1500),代表密碼鎖顯示的數字。試問解碼後的密碼為何?

解碼方式如下:
當存在 n1 、 n2 、 n3 、 n4 、 n5 這五個數字(0 < n1 < n2 < n3 < n4 < n5 ≦ 30),並且有
a1 = 20 × n1
a2 = n2 ^ 2
a3 = 3 × n3
a4 = 4 × (n3 + n4)
a5 = 5 × (n5 - n4)
滿足 a1 + a2 + a3 + a4 + a5 = N,代表 n1 、 n2 、 n3 、 n4 、 n5 這五元數組可以構成 N 。

如果有 c 個五元數組滿足上式,則密碼即為 c ^ 3 之值;如果沒有五元數組滿足,則密碼為 5 × N - 3。



範例輸入:
範例輸入 #1
96

範例輸入 #2
300


範例輸出:
範例輸出 #1
125

範例輸出 #2
41781923


解題思維:
就是單純地五層的巢狀迴圈每層分別窮舉 n1 、 n2 、 n3 、 n4 、 n5,然後依序求出 a1 、 a2 、 a3 、 a4 、 a5 看總和是否為 n。

然後看有多少組總和為 n,即為 c 值。最後根據題意利用 c 值計算所求即可。




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

更多創作