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
广告