検索
ホームページバックエンド開発C++C++ で書かれており、すべての要素が X より大きいセグメントの数を見つけます。

C++ で書かれており、すべての要素が X より大きいセグメントの数を見つけます。

Sep 10, 2023 am 09:29 AM
C言語すべての要素x より大きいセグメントの数

C++ で書かれており、すべての要素が X より大きいセグメントの数を見つけます。

この記事では、指定されたシーケンス内の指定された数値 X より大きいセグメントまたはサブ配列の数を見つける必要があります。

重なり合うセグメントは 1 回のみカウントできます。隣接する 2 つの要素またはセグメントを別々にカウントすることはできません。ここに与えられた問題の基本的な例を示します。 -

Input : arr[ ] = { 9, 6, 7, 11, 5, 7, 8, 10, 3}, X = 7
Output : 3
Explanation : { 9 }, { 11 } and { 8, 10 } are the segments greater than 7

Input : arr[ ] = { 9, 6, 12, 2, 11, 14, 8, 14 }, X = 8
Output : 4
Explanation : { 9 }, { 12 }, { 11, 14 } and { 14 } are the segments greater than 8

解決策を見つける方法

単純な方法

この問題では、変数を 0state で初期化します。 そして、指定された配列の処理を開始します。X より大きい要素が見つかったら、状態を 1 に変更して要素の処理を続行します。X 以下の数値が見つかったら、そのたびに状態を 0 に戻します。ステータスが 1 に変化して戻ると、カウントは 1 増加して 0 になります。

#include <bits/stdc++.h>
using namespace std;
int main (){
    int a[] = { 9, 6, 12, 2, 11, 14, 8, 14 };
    int n = sizeof (a) / sizeof (a[0]);
    int X = 8;
    int state = 0;
    int count = 0;
    // traverse the array
    for (int i = 0; i < n; i++){
        // checking whether element is greater than X
        if (a[i] > X){
           state = 1;
        }
        else{
           // if flag is true
           if (state)
               count += 1;
            state = 0;
        }
    }
    // checking for the last segment
    if (state)
        count += 1;
    cout << "Number of segments where all elements are greater than X: " << count;
    return 0;
}

出力

Number of segments where all elements are greater than X: 4

上記プログラムの説明

上記プログラムでは、数値がより大きい場合に状態をスイッチとして使用します。 X が見つかりました。X より大きい数値が見つかった場合は 1 に設定されます。X 以下の数値が見つかった場合は 0 に設定されます。最後に、count に保存された結果を出力します。

結論 h2>

この記事では、セグメントが存在するたびに状態を 1 と 0 に設定する方法を適用することで、すべての要素が X より大きいセグメントの数を見つける問題を解決しました。見つかった。このプログラムは、C、Java、Python などの他のプログラミング言語で作成できます。

以上がC++ で書かれており、すべての要素が X より大きいセグメントの数を見つけます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はtutorialspointで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
cにゆるく結合されたデザインを実装する方法は?cにゆるく結合されたデザインを実装する方法は?Apr 28, 2025 pm 09:42 PM

Cでゆるい結合設計を実装するには、次の方法を使用できます。1。ロガーインターフェイスの定義やFileloggerとConsoleloggerの実装など、インターフェイスを使用します。 2。データアクセスクラスなどの依存関係注射は、コンストラクターを介してデータベースポインターを受信します。 3.件名クラスなどのオブザーバーパターンは、ConcreteteObserverとAnother Observerに通知します。これらのテクノロジーを通じて、モジュール間の依存関係を削減し、コードメンテナビリティと柔軟性を向上させることができます。

Cの例外ニュートラルコードとは何ですか?Cの例外ニュートラルコードとは何ですか?Apr 28, 2025 pm 09:39 PM

例外コードとは、例外をスローしたり処理したりしないコードのスニペットを指します。 Cプログラミングでは、例外コードを適用することで、例外処理ロジックを簡素化し、コードの保守性と信頼性を向上させることができます。

Cでテンプレートを使用する方法は?Cでテンプレートを使用する方法は?Apr 28, 2025 pm 09:21 PM

Cテンプレートは、一般的なプログラミングを実装するために使用され、一般的なコードの書き込みを可能にします。 1)あらゆるタイプに適したMAX関数などのテンプレート関数を定義します。 2)一般的なコンテナクラスなどのテンプレートクラスを作成します。 3)テンプレートのインスタンス化、コンパイル時間、テンプレートの専門化、デバッグ、エラー情報に注意してください。 4)ベストプラクティスに従って、コードをシンプルに保ち、制約テンプレートパラメーターの使用を検討します。

Cにロックフリーのデータ構造を実装する方法は?Cにロックフリーのデータ構造を実装する方法は?Apr 28, 2025 pm 09:15 PM

Cにロックフリーのデータ構造を実装することは、原子動作とCAS操作を使用することで実現できます。特定の手順には次のものが含まれます。1。STD:: Atomicを使用して、頭と尾の原子動作を確保します。 2。Compare_Exchange_Strongを使用してCAS操作を実行して、データの一貫性を確保します。 3. std :: shared_ptrを使用してノードデータを管理して、メモリの漏れを避けます。

Cで文字列ストリームを使用する方法は?Cで文字列ストリームを使用する方法は?Apr 28, 2025 pm 09:12 PM

Cで文字列ストリームを使用するための主な手順と予防策は次のとおりです。1。出力文字列ストリームを作成し、整数を文字列に変換するなどのデータを変換します。 2。ベクトルを文字列に変換するなど、複雑なデータ構造のシリアル化に適用します。 3.パフォーマンスの問題に注意を払い、大量のデータを処理するときに文字列ストリームを頻繁に使用することを避けます。 std :: stringの追加方法を使用することを検討できます。 4.メモリ管理に注意を払い、ストリングストリームオブジェクトの頻繁な作成と破壊を避けます。 std :: stringstreamを再利用または使用できます。

Cの静的分析とは何ですか?Cの静的分析とは何ですか?Apr 28, 2025 pm 09:09 PM

Cでの静的分析の適用には、主にメモリ管理の問題の発見、コードロジックエラーの確認、およびコードセキュリティの改善が含まれます。 1)静的分析では、メモリリーク、ダブルリリース、非初期化ポインターなどの問題を特定できます。 2)未使用の変数、死んだコード、論理的矛盾を検出できます。 3)カバー性などの静的分析ツールは、バッファーオーバーフロー、整数のオーバーフロー、安全でないAPI呼び出しを検出して、コードセキュリティを改善します。

Cのメモリストリームとは何ですか?Cのメモリストリームとは何ですか?Apr 28, 2025 pm 09:03 PM

Cのメモリストリームは、std :: stringstream、std :: istringstream、std :: ostringstreamクラスを使用するテクノロジーを参照して、メモリ内のデータを読み書きします。 1)std :: stringstreamは読み書きに使用でき、std :: istringstreamは読み取りに使用され、std :: ostringstreamは執筆に使用されます。 2)メモリストリームを使用すると、データ処理のパフォーマンスが向上する可能性がありますが、メモリの使用に注意する必要があります。 3)コードの読みやすさを改善するために、詳細なコメントとドキュメントを追加することをお勧めします。

Cのパッケージ管理ツールとは何ですか?Cのパッケージ管理ツールとは何ですか?Apr 28, 2025 pm 08:54 PM

Cのパッケージ管理ツールには、主にVCPKG、Conan、CmakeのFetchContentが含まれています。 1.VCPKGは、大規模なプロジェクトや多様なシナリオに適しており、使いやすいです。 2.CONANは、厳格なバージョン制御を必要とするプロジェクトに適した柔軟性とカスタマイズを強調しています。 3. FetchContentは、小規模プロジェクトと迅速な統合に適しており、機能が比較的限られています。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター