【AtCoder】ABC291解説(Python)

AtCoder Beginner Contest 291(Sponsored by TOYOTA SYSTEMS)の解説記事です。

ABC291 A – camel Case

問題

問題文の要約は以下の通りです。

問題の要約

1 文字だけが英大文字であり、それ以外は英小文字からなる文字列 S を与えたときに大文字は何文字目か出力せよ。

入力

S

出力

大文字が S の先頭から何文字目に登場するかを、整数で出力せよ。

解法1

1文字づつ大文字の集合に含まれているか確認する。

解説

英大文字に含まれているかはin 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'で確認できるのでfor文で1文字づつ確認します。

解答

S=input()
for i in range(len(S)):
  if S[i] in 'ABCDEFGHIJKLMNOPQRSTUVWXYZ':
    print(i+1)

解法2

大文字か確認するメソッドを用いる。

解説

Python で大文字かどうか判定するメソッドに isupper があります。このメソッドを使用することができます。

解答

S=input()
for i in range(len(S)):
    if S[i].isupper():
        print(i+1)
1 2
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!