钱币兑换问题

来源:互联网 发布:男士皮带淘宝 编辑:程序博客网 时间:2024/04/30 13:52

Description

在一个国家仅有1分,2分,3分硬币,将钱N分兑换成硬币有很多种兑法。请你编程序计算出共有多少种兑法。

Input

每行只有一个正整数N,N小于32768。(有多组测试数据,以EOF结束)

Output

对应每个输入,输出兑换方法数。

Sample Input

20
2934

Sample Output

44
718831

Source

hdoj
这个题的思路是:当3分的硬币确定时, 剩下的就只有1分和2分的了,只要考虑剩下的钱币里有几个2分的就好了,2分的确定了,1分的自然也就确定了,
#include <iostream>#include <cstring>using namespace std;int main(){int n, account = 0, leave = 0, tmp = 0;while(~scanf("%d", &n)){account = 0;leave = n / 3;for(int i = 0; i <= leave; i++){tmp = n - i * 3;account += tmp / 2 + 1;}cout<<account<<endl;}return 0;}


原创粉丝点击