[python]バックアップアルゴリズム#1316


📝 質問する


コンビネーションワードとは、単語に存在するすべての文字に対して、各文字が連続して現れる場合にのみ使用されます.例えば、ccazzzbbは、c、a、z、bが連続して現れるため、kinもk、i、nが連続して現れるが、aabbbbcbはbが落ちたため、組合せ語ではない.
プログラムを作成し、N個の単語を入力し、グループ内の単語数を出力してください.

入力


1行目の単語の個数はNです.Nは100以下の自然数である.2行目から、単語はN行に入ります.単語はアルファベット小文字だけで、繰り返しず、最長100です.

🖨 しゅつりょく


最初の行はグループ語の個数を出力します.

入力例1

3
happy
new
year

🖨 サンプル出力1

3

入力例2

4
aba
abab
abcabc
a

🖨 サンプル出力2

1

入力例3

5
ab
aa
aca
ba
bb

🖨 サンプル出力3

4

入力例4

2
yzyzy
zyzyz

🖨 サンプル出力4

0

入力例5

1
z

🖨 サンプル出力5

1

📚 私が提出したコード

wordCount = input()
result = 0
for _ in range(int(wordCount)):
  word = input()
  previous = word[0]
  wordList = [previous]
  temp = 1
  for w in word[1:]:
    if previous != w and w not in wordList:
      wordList.append(w)
      temp = 1
    elif previous != w and w in wordList:
      temp = 0
      break
    previous = w
  result += temp
print(result)

▼▼私が提出したコードの説明

  • input():キーボード入力値を受け入れる関数
  • 単純に繰り返し実行するためにfor文を書くだけなら、他の変数を設定せずに「」を書く.
  • range():0から(入力パラメータ値-1)の整数のリストを含む関数
  • を返します.
  • append():リストに要素を追加する関数
  • メモリ:29200 KB
  • 時間:72 ms
  • コード長:357 B