演算法硬幣
發布時間: 2024-08-12 09:25:08
❶ 99個硬幣湊成38塊錢怎麼演算法
99個硬幣湊成38塊錢可以這樣算:硬幣只有1元、0.5元x+y=99x+0.5y=380.5y=99-380.5y=61y=122個x+y=99x=99-122x=-23個。
❷ 用1分,2分和5分硬幣湊成一元錢的方法有多少種
不知道有沒有限制一定要有這3種硬幣呢?如果這三種硬幣必須至少用一枚的話,演算法如下:
設x個1分,y個2分,z個5分,且xyz都是正自然數
x+2y+5z=100
19>=z>=1
z=1時 x+2y=95 x>=1,且x是奇數;2y<=94,且y是整數,所以有47種
z=2時 x+2y=90 1<=y<=44 同理,有44種
z=3時 x+2y=85 1<=y<=42 同理,有42種
z=4時 x+2y=80 1<=y<=39 同理,有39種
z=5時 x+2y=75 1<=y<=37 同理,有37種
……
這個方法好笨,要算19次……不過我暫時想不出更好的方法
但有個規律就是個數依次-3,-2,-3,-2,-3……
❸ 演算法 最少硬幣問題
設 dp[k] 表示找錢數 k 需要的最少硬幣數。對每一個dp[i]需要存儲這個狀態下需要的各硬幣數量。
對T[1..n]中的每一個T[i],如果 dp[k-T[i]] 中需要硬幣 T[i] 的數量小於Coins[i]-1,則把 dp[k-T[i]]+1 加入待比較的數組中。
dp[k]= min{ dp[k-T[i]]+1 },同時要更新 dp[k] 需要的各硬幣的數量。
熱點內容