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)