C/C++の宿題片付けます 137代目at TECH
C/C++の宿題片付けます 137代目 - 暇つぶし2ch577:デフォルトの名無しさん
10/07/06 23:36:32
>>570 再帰は駄目だな、100円でいっぱいいっぱいだw
#include<stdio.h>
#include <limits.h>

int coinfunc(int *c, int k, int m)
{
    int i, tmp, min = INT_MAX;
    if (m == 0)
        return 0;
    else if (m < 0)
        return -1;
    for (i = 0; i < k; i++) {
        tmp = coinfunc(c, k, m - c[i]);
        if (tmp < 0)
            continue;
        else if (tmp < min)
            min = tmp;
    }
    return min + 1;
}

int main(void)
{
    int m, c[] = {1, 5, 8, 10, 15};
    while (scanf("%d", &m) != 1)
        scanf("%*[^\n]");
    printf("%d\n", coinfunc(c, sizeof(c)/sizeof(*c), m));
    return 0;
}


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch