Problem 31 Coin sums(完全背包dp)

来源:互联网 发布:mac系统idea下载git 编辑:程序博客网 时间:2024/05/18 20:52

Coin sums

Problem 31

In England the currency is made up of pound, £, and pence, p, and there are eight coins in general circulation:

1p, 2p, 5p, 10p, 20p, 50p, £1 (100p) and £2 (200p).

It is possible to make £2 in the following way:

1×£1 + 1×50p + 2×20p + 1×5p + 1×2p + 3×1p

How many different ways can £2 be made using any number of coins?


Answer:
73682Completed on Sat, 29 Oct 2016, 03:50

题解:完全背包。DP。


代码:

#include<bits/stdc++.h>using namespace std;int coins[8] = {1,2,5,10,20,50,100,200};int dp[210];int main(){memset(dp,0,sizeof(dp));dp[0]=1;for(int i=0;i<8;i++){for(int j=coins[i];j<=200;j++){if(j>=coins[i])dp[j]+=dp[j-coins[i]];}}cout<<dp[200]<<endl;return 0;}


0 0
原创粉丝点击