目次
- 関数の最後に false を返します。
ホームページ バックエンド開発 C++ 2 番目のビットを繰り返し置換してバイナリ文字列を等しくします

2 番目のビットを繰り返し置換してバイナリ文字列を等しくします

Sep 17, 2023 pm 07:41 PM
交換する 繰り返す バイナリ文字列

2 番目のビットを繰り返し置換してバイナリ文字列を等しくします

この問題では、bin1 文字列の 2 番目の文字を最初と 2 番目の文字で置き換えることにより、bin1 文字列を bin2 文字列に変換する必要があります。 の最小値または最大値、および最初の文字が削除されます。

最初の文字を削除する必要があるため、2 つの文字列の最後の len2 − 1 文字が同じであることを確認する必要があります。さらに、bin1 文字列の開始文字に対して指定された操作を実行して、2 番目の文字列の最初の文字を取得できることを確認する必要があります。

問題文 - 長さ len1 および len2 の bin1 および bin2 バイナリ文字列が与えられています。次の操作で bin1 文字列を bin2 文字列に変換できるかどうかを確認する必要があります。

  • bin1 文字列の最初と 2 番目の文字の最小値または最大値を使用して、bin1 文字列の 2 番目の文字を更新します。

  • bin1 文字列の最初の文字を削除すると、文字列サイズは毎回 1 ずつ減ります。

######例###### ######入力###### リーリー ######出力###### リーリー

手順- bin1 文字列を bin2 文字列に変換するには、次の手順を実行できます。

2 番目の文字を min(0,1) に置き換えて、最初の文字を削除できます。したがって、文字列は 001011 になります。

同じ操作をもう一度実行すると、文字列は 01011 になります。

次のいくつかの操作で、文字列はそれぞれ 0011 と 011 になります。

  • ######入力###### リーリー ######出力###### リーリー

    説明
  • - 指定された文字列はすでに同じです。
  • ######入力###### リーリー ######出力###### リーリー

    説明
  • - 指定された操作を実行して bin1 文字列を bin2 文字列に変換することはできません。
  • 方法1

  • bin1 文字列の長さが短い場合、bin2 文字列に変換できません。

その他の場合、bin1 文字列の最後の len2 − 1 文字は、何も操作を実行しないため、変更されません。したがって、両方の文字列の最後の len2 − 1 文字は同じである必要があります。 さらに、bin2 文字列の最初の文字が '0' の場合、bin1 文字列の開始文字に対して min() 操作を実行する必要があり、少なくとも 1 つの '0' が含まれている必要があります。

bin2 文字列の最初の文字が '1' の場合、bin2 文字列の開始文字に対して max() 操作を実行する必要があり、その文字には少なくとも 1 つの '1' が含まれている必要があります。 ###アルゴリズム###

ステップ 1

- bin1 の長さが bin2 文字列の長さより短い場合は、false を返します。

ステップ 2

- 2 番目の位置から開始して bin2 文字列をたどります。

ステップ 3

- bin2[p] が bin1[p len1 - len2] と等しくない場合は、最後の len2 -1 文字が同じではないため、false を返します。

ステップ 4

- 最初の len1 ~ len2 1 文字を調べて、bin2[0] 文字が含まれているかどうかを確認します。 「はい」の場合は、true を返します。

ステップ 5

- 関数の最後に false を返します。

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

時間計算量 - 文字列文字と一致する場合は O(N)。

動的空間を使用しないため、空間の複雑さ - O(1)。

指定された操作に従って、最初のバイナリ文字列を 2 番目のバイナリ文字列に変換する方法を学習しました。プログラマは、最後の文字を最後の文字と最後の 2 番目の文字の最小値または最大値に置き換え、最後の文字を削除することによって、ある文字列を別の文字列に変換できるかどうかをチェックしようとする場合があります。

以上が2 番目のビットを繰り返し置換してバイナリ文字列を等しくしますの詳細内容です。詳細については、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)

PyCharm の置換ショートカット キーを 5 分でマスターして、プログラミングの速度を簡単に向上させましょう。 PyCharm の置換ショートカット キーを 5 分でマスターして、プログラミングの速度を簡単に向上させましょう。 Feb 22, 2024 am 10:57 AM

PyCharm は、開発者のプログラミング効率の向上に役立つ豊富な機能とショートカット キーを備えた、一般的に使用される Python 統合開発環境です。日々のプログラミング プロセスにおいて、PyCharm のショートカット キー置換スキルを習得すると、開発者がタスクをより迅速に完了できるようになります。この記事では、プログラミング速度を簡単に向上させるために、PyCharm で一般的に使用される置換ショートカット キーをいくつか紹介します。 1.Ctrl+R 置換 PyCharm では、Ctrl+R ショートカット キーを使用して置換操作を実行できます。

EdgeブラウザでWebページを開く際の無限ループの問題を解決する方法 EdgeブラウザでWebページを開く際の無限ループの問題を解決する方法 Dec 25, 2023 pm 01:19 PM

win10 でエッジ ブラウザを使用している多くの友人は、Web ページが繰り返し開かれて頭の痛い問題に遭遇しています。以下で詳細な解決策を見てみましょう。 Edge ブラウザが Web ページを繰り返し開き続ける場合の対処方法: 1. Edge ブラウザに入り、右上隅にある 3 つの点をクリックします。 2. タスクバーの「設定」をクリックします。 3. 「Microsoft エッジを開く方法」を見つけます。 4. ドロップダウン メニューをクリックして、[スタート ページ] を選択します。 5. 問題を解決するには、完了後にブラウザを再起動します。

PyCharm 初心者ガイド: 置換関数の包括的な分析 PyCharm 初心者ガイド: 置換関数の包括的な分析 Feb 25, 2024 am 11:15 AM

PyCharm は、開発効率を大幅に向上させる豊富な機能とツールを備えた強力な Python 統合開発環境です。その中でも置換機能は開発プロセスで頻繁に使用される機能の 1 つであり、開発者がコードを迅速に修正し、コードの品質を向上させるのに役立ちます。この記事では、初心者がこの関数をよりよく習得して使用できるように、特定のコード例と組み合わせて PyCharm の置換関数を詳細に紹介します。置換関数の概要 PyCharm の置換関数は、開発者がコード内の指定されたテキストを迅速に置換するのに役立ちます

Java の StringBuilder.replace() 関数を使用して、指定された範囲の文字を置換します。 Java の StringBuilder.replace() 関数を使用して、指定された範囲の文字を置換します。 Jul 24, 2023 pm 06:12 PM

Java の StringBuilder.replace() 関数を使用して、指定した範囲の文字を置換します。Java では、StringBuilder クラスが replace() メソッドを提供し、これを使用して文字列内の指定した範囲の文字を置換できます。このメソッドの構文は次のとおりです。 publicStringBuilderreplace(intstart,intend,Stringstr) 上記のメソッドは、インデックス スターを置き換えるために使用されます。

jQueryを使用して要素のクラス名を置換する jQueryを使用して要素のクラス名を置換する Feb 24, 2024 pm 11:03 PM

jQuery は、Web 開発で広く使用されている古典的な JavaScript ライブラリで、イベントの処理、DOM 要素の操作、Web ページ上でのアニメーションの実行などの操作を簡素化します。 jQueryを使っていると要素のクラス名を置き換える場面がよくありますが、この記事ではその実践的な方法と具体的なコード例を紹介します。 1.removeClass() メソッドと addClass() メソッドを使用する jQuery には、削除用の RemoveClass() メソッドが用意されています。

REPLACE 関数を使用して MySQL の文字列の指定された部分を置換する方法 REPLACE 関数を使用して MySQL の文字列の指定された部分を置換する方法 Jul 25, 2023 pm 01:18 PM

MySQL は、データを処理および操作するためのさまざまな機能を提供する、一般的に使用されるリレーショナル データベース管理システムです。このうち、REPLACE関数は文字列の指定した部分を置き換える関数です。この記事では、MySQL で文字列を置換するための REPLACE 関数の使用方法を紹介し、コード例を通してその使用法を示します。まず、REPLACE 関数の構文を見てみましょう: REPLACE(str,search_str,replace_str)。

PyCharm はショートカット キーを置き換えてプログラミングをより便利にします。 PyCharm はショートカット キーを置き換えてプログラミングをより便利にします。 Feb 21, 2024 pm 12:03 PM

PyCharm はプログラマーの間で人気のある統合開発環境で、プログラミングをより効率的かつ便利にするための強力な機能とツールを提供します。 PyCharm では、ショートカット キーの適切な設定と置き換えがプログラミング効率を向上させるための鍵の 1 つです。この記事では、プログラミングをより便利にするために、PyCharmのショートカットキーを置き換える方法を紹介します。 1. ショートカット キーを置き換える必要がある理由 PyCharm では、ショートカット キーはプログラマーがさまざまな操作を迅速に完了し、プログラミング効率を向上させるのに役立ちます。ただし、人それぞれ習慣は異なりますので、人によっては

Python を使用して Excel の単語を置換するにはどうすればよいですか? Python を使用して Excel の単語を置換するにはどうすればよいですか? Sep 16, 2023 pm 10:21 PM

Python では、openpyxl と呼ばれるサードパーティの Python ライブラリを使用して、Excel で 1 つの単語を別の単語に置き換えることができます。 Microsoft Excel は、データの管理と分析に便利なツールです。 Python を使用すると、一部の Excel データ管理タスクを自動化できます。この記事では、Python を使用して Excel の単語を置換する方法を学びます。 Excel の Word を置き換えるために openpyxl をインストールする前に、Python パッケージ マネージャーを使用してシステムに openpyxl ライブラリをインストールする必要があります。 openpyxl をインストールするには、ターミナルまたはコマンド プロンプトに次のコマンドを入力します。ピピンスト

See all articles