钱币兑换问题

Problem Description

在一个国家仅有1分,2分,3分硬币,将钱N兑换成硬币有很多种兑法。请你编程序计算出共有多少种兑法。
 
Input
每行只有一个正整数N,N小于32768。
 
Output
对应每个输入,输出兑换方法数。
 
Sample Input
2934
12553
 
Sample Output
718831
13137761
 
 
思路:兑换3分的数量从0开始,一直到N/3;每种3分的数量对应着c种情况,这c种情况的数量等于剩余钱币可兑换2分硬币的的数量加1。
 
 
#include<stdio.h>
int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        int c=0;
        for(int i=0;i<=n/3;i++)
        {
            c+=(n-3*i)/2+1;
        }
        printf("%d\n",c);
    }
}

 

posted @ 2016-03-12 15:50  _雨夏  阅读(815)  评论(0编辑  收藏  举报