uva 674 Coin Change
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=615
#include <iostream>
#include <cstdio>
using namespace std;
const int N=8000;
long long num[N];
int coin[6]={0,1,5,10,25,50};
int main()
{
int n;
for(int i=1;i<=7500;i++)
num[i]=0;
num[0]=1;
for(int t=1;t<=5;t++)
for(int i=1;i<=7500;i++)
{
if(i>=coin[t]) num[i]+=num[i-coin[t]];// 状态转移方程
}
while(cin>>n)
{
cout<<num[n]<<endl;
}
return 0;
}

浙公网安备 33010602011771号