目次
このメソッドでは、str の長さ K の各部分文字列を見つけます。その後、特定の部分文字列内の母音の総数を数え、それらが X に等しいことがわかった場合は、カウントを 1 増やします。
cntSubStr() 関数で、「cnt」変数をゼロに初期化して、部分文字列の合計数を格納します。
– 部分文字列を格納するためO(K)です
ホームページ バックエンド開発 C++ 正確に X 個の母音を含む長さ K の部分文字列の数

正確に X 個の母音を含む長さ K の部分文字列の数

Sep 01, 2023 am 08:57 AM
長さ 母音 部分文字列の数

正確に X 個の母音を含む長さ K の部分文字列の数

この問題では、ちょうど K 個の母音を含む長さ K の部分文字列の総数を見つける必要があります。問題を解決する 2 つの異なる方法を見ていきます。簡単な方法を使用して、長さ K の各部分文字列内の母音の数を確認できます。さらに、この問題を解決するためにスライディング ウィンドウ アプローチを使用することもできます。

問題文 - 小文字と大文字のアルファベットを含む、長さ N の文字列 str が与えられます。正確に X 個の母音を含む長さ K の部分文字列の総数を数える必要があります。

###例###

入力

– str = "チュートリアルポイント"、K = 3、X = 2

出力

– 6

説明

– ちょうど 2 つの母音を含む長さ 3 の部分文字列は、「uto」、「ori」、「ria」、「ial」、「Poi」、「oin」です。 p>入力

– str = 'aeiou'、K = 2、X = 2

出力

– 4

説明

-長さ 2 で、ちょうど 2 つの母音を含む部分文字列は、「ae」、「ei」、「io」、「ou」です。

入力

– str = 'fghjsdfdffg'、K = 5、X = 1

出力

– 0

説明

- 文字列 str には母音が含まれていないため、母音を 1 つ含む部分文字列は見つかりません。 方法1

このメソッドでは、str の長さ K の各部分文字列を見つけます。その後、特定の部分文字列内の母音の総数を数え、それらが X に等しいことがわかった場合は、カウントを 1 増やします。

###アルゴリズム###

cntSubStr() 関数で、「cnt」変数をゼロに初期化して、部分文字列の合計数を格納します。

  • ループを使用して、0 番目のインデックスから len - K インデックスまで反復します。ここで、「len」は文字列の長さです。

  • ループ内で、substr() メソッドを使用して、i 番目のインデックスから始まる長さ K の部分文字列を取得します。

  • countVowel() 関数を実行して、部分文字列内の母音の総数をカウントします。

  • countVowel() 関数で、「vowels」変数をゼロに初期化し、母音の総数を保存します。
    • 部分文字列をトラバースします。現在の文字は母音です。「母音」の値に 1 を加えます。

    • 「母音」を返します。

    • cntSubStr() 関数では、部分文字列内の母音の合計数が X に等しい場合、「cnt」の値を 1 増やします。
  • 「cnt」の値を返します。

  • ###例### リーリー ###出力### リーリー

    時間計算量
  • – O(N*K)、str を走査するとき、countVowel() 関数内の部分文字列を走査します。

空間複雑度

– 部分文字列を格納するためO(K)です

方法 2 スライディング ウィンドウ技術を使用して、この方法の問題を解決します。部分文字列から最初の文字を削除し、最後に 1 文字を追加します。さらに、現在の部分文字列内の母音の数を追跡し、それが X と等しい場合は、その数を 1 つ増やすことができます。

###アルゴリズム###

特定の文字が母音かどうかに基づいてブール値を返す isVowel() 関数を定義します。

cntSubStr() 関数で、「total_vow」を定義し、ゼロに初期化して、現在のウィンドウに母音の合計を保存します。

    0 番目のインデックスから開始して、最初のウィンドウを表す長さ K の部分文字列内の母音の総数を見つけます。
  • 「vow」の値が X に等しいかどうかに応じて、「cnt」変数を 1 または 0 に初期化します。
  • 文字列の位置 1 から len – K インデックスまでのトラバースを開始します。
  • (i-1) 文字が母音の場合、「total_vow」の値を 1 減算します。
  • (i - 1 K) 番目のインデックスの文字が母音の場合、「total_vow」の値を 1 増やします。
  • 「total_vow」が X と等しい場合、「cnt」を 1 増やします。
  • 「cnt」の値を返します。
  • ###例### リーリー ###出力### リーリー
  • 文字列を反復処理するため、時間計算量 - O(N)。
  • 余分なスペースを使用しないため、スペースの複雑さ - O(1)。

  • 2 番目の方法を最適化し、コードの時間の複雑さを軽減しました。さらに、2 番目の方法の空間複雑性も最適化します。ここでは、正確に X 個の母音を含む、長さ K の部分文字列の合計数を求めますが、プログラマは、正確に K 個の母音を含む、任意の長さの部分文字列の合計数を見つけようとすることもできます。

以上が正確に X 個の母音を含む長さ K の部分文字列の数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

文字列内のインデックス位置に従って母音を再配置して文字列を変更します。 文字列内のインデックス位置に従って母音を再配置して文字列を変更します。 Sep 06, 2023 pm 06:53 PM

この記事では、母音をそれぞれのインデックスでアルファベット順に並べ替えることによって、C++ で指定された文字列を変更する方法について説明します。また、この問題を解決するために使用される方法についても説明し、テストケースを含む例を示します。問題文 文字列を指定して、それぞれのインデックスの母音をアルファベット順に並べ替えます。文字列内の子音は元の順序を維持する必要があります。たとえば、文字列「tutorialspoint」を指定すると、出力は「tatiriolspount」となるはずです。方法 この問題は、簡単なアルゴリズムを使用して解決できます。まず、指定された文字列内のすべての母音をそれぞれの順序で含む別の文字列を作成します。次に、その文字列をアルファベット順に並べ替えることができます。やっと、

PHP 配列の長さの制限は何ですか? PHP 配列の長さの制限は何ですか? Mar 13, 2024 pm 06:30 PM

PHP では配列の長さに固定された制限はなく、システムのメモリ サイズに応じて動的に調整できます。 PHP では、配列は任意の数の要素を格納できる非常に柔軟なデータ構造であり、各要素は任意の型の値、または別の配列にすることもできます。 PHP 配列の長さの制限は、主にシステムのメモリ サイズと PHP 構成のメモリ制限によって決まります。一般に、システムのメモリが十分に大きく、PHP のメモリ制限が十分に高い場合、配列の長さは非常に大きくなる可能性があります。ただし、システムのメモリが不足している場合や、

PHPの配列の長さに制限はありますか? PHPの配列の長さに制限はありますか? Mar 13, 2024 pm 06:36 PM

PHPの配列の長さに制限はありますか?特定のコード例が必要 PHP では、配列の長さに固定制限はなく、配列のサイズはシステム メモリの実際の制限に応じて動的に調整できます。 PHP の配列は動的配列であるため、必要に応じて動的に拡大または縮小できます。 PHP では、配列は順序付けされたマップされたデータ構造であり、配列の要素には配列の添字または連想配列のキー値を使用してアクセスできます。 PHP 配列の長さが制限されているかどうかを示す具体的なコード例を見てみましょう。まず、次のコードを渡すことができます

配列を指定して、同じ文字を持たない 2 つの文字列の長さの最大合計を見つけます。 配列を指定して、同じ文字を持たない 2 つの文字列の長さの最大合計を見つけます。 Aug 29, 2023 pm 06:45 PM

この記事の目的は、指定された配列内で共通の文字を持たない文字列のペアの長さの合計を最大化するプログラムを実装することです。定義上、文字列は文字の集合です。問題文 指定された配列内に共通の文字を持たない文字列のペアの長さの合計を最大化するプログラムを実装します。例 1 入力配列を考えてみましょう:a[]=["efgh","hat","fto","car","wxyz","fan"]出力が取得されました:8 説明 文字列 "abcd" と "wxyz" には共通の文字はありません」。結果として、2 つの文字列を組み合わせた長さは 4+4 となり、これは 8 に等しく、すべての可能なペアの中で最長の長さになります。例 2Letu

len 関数の使用と重要性に関する複数の視点 len 関数の使用と重要性に関する複数の視点 Dec 28, 2023 am 08:38 AM

len 関数の役割と意味をさまざまな角度から解釈する len 関数は、Python プログラミング言語でよく使用される関数の 1 つです。これは主に、コンテナ オブジェクト (文字列、リスト、タプルなど) の長さまたは要素数を返すために使用されます。この単純な関数はプログラムを作成する際に非常に重要な役割を果たし、その機能と意味はさまざまな角度から解釈できます。この記事では、パフォーマンス、可読性、コンテナの種類の観点から len 関数を説明し、具体的なコード例を示します。 1. 性能の観点 大規模なデータを処理する場合、プログラムの性能は

golangで入力テキストの長さを確認する方法 golangで入力テキストの長さを確認する方法 Jun 24, 2023 am 11:52 AM

golang では、入力テキストの長さの検証は一般的なニーズです。検証を通じて、入力されたテキストが特定の要件を満たしており、予想される長さ内であることを確認できます。この記事では、golang を使用して入力テキストの長さを確認する方法を検討します。まず、golang で一般的に使用される文字列関数を理解する必要があります。このうち、len()関数は文字列の長さを計算するために使用されます。たとえば、次のコードは文字列「helloworld」の長さを計算します: str:=

Javaで斜辺の長さを見つけるにはどうすればよいですか? Javaで斜辺の長さを見つけるにはどうすればよいですか? Sep 09, 2023 pm 10:33 PM

斜辺は、直角三角形の直角の反対側の最長の辺です。斜辺の長さはピタゴラスの定理を使用して求めることができます。ピタゴラスの定理によれば、2 辺の長さの 2 乗の和は 3 番目の辺の長さの 2 乗に等しい、つまり a2+b2=c2 となります。ここで、a、b、c は 3 つの辺を表します。直角三角形。つまり、Hypotenuse=Math.sqrt(Math.pow(base,2)+Math.pow(height,2)) この記事では、Java プログラミング言語を使用して斜辺の長さを見つける方法を説明します。例をいくつか示します. インスタンス-1 の中国語訳は次のとおりです: 例-1 底辺の長さと高さがそれぞれ 3 と 4 であると仮定します。次に、ピタゴラスの定理の公式を使用すると、長さは

正確に X 個の母音を含む長さ K の部分文字列の数 正確に X 個の母音を含む長さ K の部分文字列の数 Sep 01, 2023 am 08:57 AM

この問題では、ちょうど K 個の母音を含む長さ K の部分文字列の総数を見つける必要があります。問題を解決する 2 つの異なる方法を見ていきます。簡単な方法を使用して、長さ K の各部分文字列内の母音の数を確認できます。さらに、この問題を解決するためにスライディング ウィンドウ アプローチを使用することもできます。問題ステートメント - 小文字と大文字のアルファベットを含む長さ N の文字列 str が与えられています。正確に X 個の母音を含む長さ K の部分文字列の総数を数える必要があります。入力例 – str="TutorialsPoint",K=3,X=2 出力 – 6 説明 – 長さ 3 で、ちょうど 2 つの母音を含む部分文字列は次のとおりです: 'uto'、'ori'、'ri

See all articles