QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: ajinn

有个算法问题请教

[复制链接]
发表于 2004-6-15 16:22:05 | 显示全部楼层
翻译了一下,好像答案不对
[code:1]
#include <iostream>
int first_denomination(int kinds_of_coins)
{
        switch(kinds_of_coins) {
        case 1: return 1;
        case 2: return 2;
        case 3: return 10;
        case 4: return 25;
        default:
                break;
        }
        return 0;
}

int cc(int amount, int kinds_of_coins)
{
        if( amount == 0 || kinds_of_coins == 1) return 1;
        if( amount <  0 || kinds_of_coins == 0) return 0;
        return  cc(amount, kinds_of_coins - 1)
                + cc(amount - first_denomination(kinds_of_coins), kinds_of_coins);
}

int count_change( int amount)
{
        return cc(amount, 4);
}
int main()
{
        std::cout<<count_change(80)<<std::endl;
        return 0;
}[/code:1]
回复

使用道具 举报

发表于 2004-6-15 16:31:54 | 显示全部楼层
哎,这个原来是计算有多少种换钱方法的,呵呵
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-8 03:00 , Processed in 0.056813 second(s), 13 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表