找出电池组合数量的 C++ 代码
假设我们有 n 个电池,每个电池最多可使用 5 次。我们有一些需要三个电池的设备,并且每次使用设备都会将电池的使用次数增加 1。如果我们必须使用设备 k 次,我们必须找出能制造多少电池组合来为设备供电。电池不能同时在两个设备中使用,并且已经使用 5 次的电池不能包括在内。电池的使用次数在数组 batt 中给出。
因此,如果输入是 n = 6、k = 2、batt = {2、4、4、2、1、3},那么输出将是 1。
只能制造一个电池组合来为设备供电 k 次。
步骤
要解决此问题,我们将遵循以下步骤 -
ans := 0 for initialize i := 0, when i < n, update (increase i by 1), do: if batt[i] + k <= 5, then: (increase ans by 1) return ans / 3
示例
让我们看看以下实现以获得更好的理解
#include <bits/stdc++.h> using namespace std; #define N 100 int solve(int n, int k, int batt[]) { int ans = 0; for(int i = 0; i < n; i++){ if(batt[i] + k <= 5) ans++; } return ans / 3; } int main() { int n = 6, k = 2, batt[] = {2, 4, 4, 2, 1, 3}; cout<< solve(n, k, batt); return 0; }
输入
6, 2, {2, 4, 4, 2, 1, 3}
输出
1
广告