C++ プログラム: 値より小さいインデックスを持つ要素を配置するために必要な操作の数を計算します。

WBOY
リリース: 2023-09-08 21:53:06
転載
773 人が閲覧しました

C++ プログラム: 値より小さいインデックスを持つ要素を配置するために必要な操作の数を計算します。

n 個の要素を含む配列 A があるとします。これらの操作は複数回実行できます -

  • #任意の正の整数 k

  • 任意の位置を選択し、その位置に k

    # を挿入します

  • このようにしてシーケンスが変更され、次の操作でもシーケンスが継続されます。
  • ul>条件を満たすために必要なオペランドの最小数を見つける必要があります: 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 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!