AtCoder Beginner Contest 132の解説記事です。
目次
ABC132 A – Fifty-Fifty
問題
問題文の要約は以下の通りです。
問題の要約
長さ4の英大文字からなる文字列 \(S\) が与えられたとき、\(S\) が2種類の文字からなり、かつ現れる各文字が2回ずつ現れているかどうかを判定せよ。
制約
・\(S\) の長さは 4
・\(S\) は英大文字からなる
入力
\(S\)
出力
\(S\)が2種類の文字からなり、かつ現れる各文字が2回ずつ現れているなら Yes
を、そうでないなら No
を出力せよ。
解法
各文字が2回ずつ現れているかどうかを判定する。
このとき、必ず2種類の文字からなります。
解説
まず入力 \(S\) を文字列で受け取ります。
# 入力
S=input()
\(S\) の各文字が2回ずつ現れているかどうかを判定します。
例えば、1文字目が2回現れているかはS.count(S[0])==2
のように書けます。
# Sの各文字が2回ずつ現れているかどうかを判定
if S.count(S[0])==2 and S.count(S[1])==2 and S.count(S[2])==2 and S.count(S[3])==2:
print('Yes')
else:
print('No')
解答
# 入力
S=input()
# Sの各文字が2回ずつ現れているかどうかを判定
if S.count(S[0])==2 and S.count(S[1])==2 and S.count(S[2])==2 and S.count(S[3])==2:
print('Yes')
else:
print('No')