Python
 Computer >> コンピューター >  >> プログラミング >> Python

与えられた文字列がPythonで4つの異なる文字列に分割できるかどうかを確認します


文字列sがあるとすると、それぞれが空でなく一意になるように、4つのサブ文字列に分割できるかどうかを確認する必要があります。

したがって、入力がs ="helloworld"のような場合、サブ文字列の可能なセットの1つが["hel"、 "lo"、 "wor"、 "ld"] >

これを解決するには、次の手順に従います-

  • サイズがs>=10の場合、
    • Trueを返す
  • 範囲1からs-1のサイズのiの場合、実行
    • 範囲i+1からs-1のサイズのjの場合、do
      • 範囲j+1からs-1のサイズのkの場合、do
        • sub1:=s[インデックス0からi-1まで]
        • sub2:=s[インデックスiからj--i-1]
        • sub3:=s[インデックスjからk--j-1]
        • sub4:=s[インデックスkからs-k-1のサイズまで]
        • sub1 sub2 sub3とsub4がすべて異なる場合、
          • Trueを返す
  • Falseを返す

理解を深めるために、次の実装を見てみましょう-

def solve(s):
   if len(s) >= 10:
      return True
   for i in range(1, len(s)):
      for j in range(i + 1, len(s)):
         for k in range(j + 1, len(s)):
            sub1 = s[0:i]
            sub2 = s[i:j - i]
            sub3 = s[j: k - j]
            sub4 = s[k: len(s) - k]
            if sub1 != sub2 and sub1 != sub3 and sub1 != sub4 and sub2 != sub3 and sub2 != sub4 and sub3 != sub4:
               return True
   return False
s = "helloworld"
print (solve(s))

入力

"helloworld"

出力

True

  1. 指定された文字列がキーワードであるかどうかを確認するPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −数値が与えられているので、その数値が2の累乗であるかどうかを確認する必要があります。 キーワードは、特定の用途で任意の言語によって予約されている特別な単語であり、識別子として使用することはできません。 指定された文字列がキーワードであるかどうかを確認するために、以下で説明するようにキーワードモジュールを使用しました。 例 # keyword module import keyword # Function def isKeyword(word) :    # list of all

  2. 指定された文字列がパングラムであるかどうかを確認するPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 文字列入力が与えられた場合、その文字列がパングラムであるかどうかを確認するPythonプログラムを生成する必要があります。 パングラムは、英語のアルファベットコレクションのすべての文字を含む文/一連の単語です。 では、問題を解決する方法を見てみましょう 入力文字列に存在する各文字が、手動で宣言するアルファベットセットに属しているかどうかをチェックするループを使用します。 上記のアプローチの実装は、-によって与えられます。 例 import string def ispangram