首頁 > 後端開發 > C++ > C++程式:計算將索引小於值的元素放置所需的操作次數

C++程式:計算將索引小於值的元素放置所需的操作次數

WBOY
發布: 2023-09-08 21:53:06
轉載
836 人瀏覽過

C++程式:計算將索引小於值的元素放置所需的操作次數

假設我們有一個包含 n 個元素的陣列 A。我們可以多次執行這些操作-

  • 選擇任何正整數k

  • 選擇任何位置並在該位置插入k

  • #這樣,序列就改變了,我們在下一個運算中繼續這個序列。

  • ul>

    我們必須找到滿足條件所需的最少運算元:對於0 到n-1 範圍內的所有i,A[i]

    因此,如果輸入是例如A = [1, 2, 5, 7, 4],那麼輸出將為3,因為我們可以執行以下操作: [1,2,5,7,4]到[1,2,3,5 ,7,4] 到[1,2,3,4,5,7,4] 到[1,2,3,4,5,3,7,4]。

    步驟 h2>

    為了解決這個問題,我們將按照以下步驟操作-

    maxj := 0
    n := size of A
    for initialize i := 0, when i < n, update (increase i by 1), do:
       maxj := maximum of maxj and (A[i] - i - 1)
    return maxj
    登入後複製

    範例

    讓我們看一下以下實作以獲得更好的理解−

    #include <bits/stdc++.h>
    using namespace std;
    
    int solve(vector<int> A) {
       int maxj = 0;
       int n = A.size();
       for (int i = 0; i < n; i++) {
          maxj = max(maxj, A[i] - i - 1);
       }
       return maxj;
    }
    int main() {
       vector<int> A = { 1, 2, 5, 7, 4 };
       cout << solve(A) << endl;
    }
    登入後複製

    輸入

    { 1, 2, 5, 7, 4 }
    登入後複製

    輸出

    3
    登入後複製

以上是C++程式:計算將索引小於值的元素放置所需的操作次數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板