各単語の文字を並べ替えて等差数列 (AP) を形成できるかどうかを確認します。

王林
リリース: 2023-09-08 20:53:08
転載
1119 人が閲覧しました

各単語の文字を並べ替えて等差数列 (AP) を形成できるかどうかを確認します。

この記事では、指定された文字列内の各単語の文字を再配置して等差数列 (AP) を形成できるかどうかを確認する方法について説明します。また、C でソリューションを実装し、コードがどのように機能するかを示す例も示します。

等差数列 (AP)

算術数列 (AP) は、各項が前の項に定数 d を加算することによって得られる数列です。定数 d は許容差と呼ばれます。

たとえば、シーケンス 1、3、5、7、9 は、許容誤差 2 の算術シーケンスです。

###方法###

指定された文字列内の各単語の文字を再配置して等差数列を形成できるかどうかを確認するには、次のように実行します。 −

    指定された文字列を個々の単語に分割します。
  • 各単語について、文字をアルファベット順に並べ替えます。
  • 並べ替えられた単語内の隣接する文字の許容差を計算します。
  • 隣接する文字のすべてのペアの許容値が同じ場合、単語の文字を再配置して等差数列を形成できます。
  • 指定された文字列内のすべての単語に対して手順 2 ~ 4 を繰り返します。
  • すべての単語を並べ替えて等差数列を形成できる場合は、true を返します。それ以外の場合は false を返します。
  • ###例###
  • 上記のメソッドを C で実装しましょう -
リーリー ###出力### リーリー

上記のコードでは、canFormAP 関数は文字列 s を入力として受け入れ、文字列内の各単語の文字を再配置して算術シーケンスを形成できる場合に true を返します。 main 関数は canFormAP 関数を呼び出し、文字列「hello world」を入力として受け取り、関数の戻り値に基づいて対応するメッセージを出力します。

テストケースの例

上記のコードがどのように機能するかを理解するためにサンプル テスト ケースを考えてみましょう -

リーリー

この例では、指定された文字列は「素早い茶色のキツネが怠惰な犬を飛び越えます」です。文字列内の各単語を再配置して算術数列を形成できます。たとえば、単語「quick」は、許容誤差 2 の等差数列「cikqu」に再配置できます。前述したように、単語「lazy」は許容誤差 11 の等差数列「alzy」に再配置できます。

したがって、この例では、指定された文字列内の各単語の文字を再配置して等差数列を形成でき、コードの出力は「文字を再配置して等差数列を形成できます」となります。

###結論は###

この記事では、指定された文字列内の各単語の文字を再配置して等差数列 (AP) を形成できるかどうかを確認する方法について説明しました。各単語の文字をソートし、隣接する文字のペア間の許容差が同じかどうかを確認するという単純なアプローチを採用しました。また、C でソリューションを実装する例も示し、サンプル テスト ケースを使用して説明します。

この問題にはさまざまな実際的な応用が考えられます。たとえば、暗号化では、文字列の文字を並べ替えることで元のメッセージを暗号化し、文字を並べ替えて等差数列を形成できるかどうかを確認することを、復号化プロセスの検証手順として使用できます。

以上が各単語の文字を並べ替えて等差数列 (AP) を形成できるかどうかを確認します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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