今有面值为 1、5、11 元的硬币各无限枚。
想要凑出 nn 元,问需要的最少硬币数量。
输入格式
仅一行,一个正整数 nn。
输出格式
仅一行,一个正整数,表示需要的硬币个数。
#include<bits/stdc++.h>
using namespace std;
int n;int f[1000005];
int main()
{
cin>>n;
f[0]=0;
int cost;
for(int i=1;i<=n;i++)
{
cost=99999999;
if(i>=1)
cost=min(cost,f[i-1]+1);
if(i>=5)
cost=min(cost,f[i-5]+1);
if(i>=11)
cost=min(cost,f[i-11]+1);
f[i]=cost;
}
cout<<f[n];
}