考えて競プロする

プログラミングコンテストの問題をどう考えて解いたかを記録していくブログです。使用言語はPython3

ABC104-B - AcCepted を解く

ABC104-B - AcCepted

 

与えられた文字列が以下の形式を満たすか判定する問題

 

・先頭の文字が 'A'

・先頭から3文字目と末尾から2文字目の間に 'C' が含まれる

・上記2文字以外はすべて小文字である

 

上記の3条件を一つずつ丁寧に判定するだけだ

 

以上を踏まえて書いたコードを以下に示す

 

提出したコード

# 入力
S=input()

# 先頭の文字が 'A'
if S[0]!='A':
  print('WA')
  exit()

# 先頭から3文字目と末尾から2文字目の間に
# 'C' が含まれる
if 'C' not in S[2:-1]:
  print('WA')
  exit()

# 上記2文字以外はすべて小文字である
s=list(S)
s.remove('A')
s.remove('C')

for x in s:
  if x not in 'abcdefghijklmnopqrstuvwxyz':
    print('WA')
    exit()

# チェックに一度もかからなかった場合
print('AC')

 

指定された2文字以外が小文字であることの判定については

2文字の大文字が邪魔だったので、除去してしまった

 

除去後の文字列が小文字のみで構成されていることを確認できれば

条件を満たしていると判断できる

 

提出結果はACでした