#3395. [GESP202406 五级 C++] 第 2 题

[GESP202406 五级 C++] 第 2 题

下面C++代码用于将输入金额换成最少币种组合方案,其实现算法是( )。

#include <iostream>
using namespace std;

#define N_COINS 7
int coins[N_COINS] = {100, 50, 20, 10, 5, 2, 1}; //货币面值,单位相同
int coins_used[N_COINS];

void find_coins(int money) {
    for (int i = 0; i < N_COINS; i++) {
        coins_used[i] = money / coins[i];
        money = money % coins[i];
    }
    return;
}
int main() {
    int money;
    cin >> money;    //输入要换算的金额

    find_coins(money);
    for (int i = 0; i < N_COINS; i++)
        cout << coins_used[i] << endl;

    return 0;
}

{{ select(1) }}

  • 枚举算法
  • 贪心算法
  • 迭代算法
  • 递归算法