C++程序计算获得总和k所需的最小硬币数量


假设我们有两个数字n和k。我们有无限数量的面值为1到n的硬币。我们想要取一些值的总和为k。我们可以选择多个相同面值的硬币来得到总和k。我们必须计算获得总和k所需的最小硬币数量。

因此,如果输入类似于n = 6;k = 16,则输出将为3,因为(2 * 6) + 4。

步骤

为了解决这个问题,我们将遵循以下步骤 -

c := (n + k - 1) / n
return c

示例

让我们看看以下实现以获得更好的理解 -

#include<bits/stdc++.h>
using namespace std;

int solve(int n, int k){
   int c=(n+k-1)/n;
   return c;
}
int main(){
   int n = 6;
   int k = 16;
   cout << solve(n, k) << endl;
}

输入

6, 16

输出

3

更新于: 2022年3月3日

173 次浏览

开启你的职业生涯

通过完成课程获得认证

开始学习
广告