找出電池組合數量的 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

更新時間:11-03-2022

269 次瀏覽

開啟您的 職業

完成課程認證

開始
廣告
© . All rights reserved.