ユニークビジョンプログラミングコンテスト2023 秋 (AtCoder Beginner Contest 323)の解説記事です。
目次
ABC323 A – Weak Beats
問題
問題文の要約は以下の通りです。
問題の要約
0
と1
からなる長さ16の文字列 \(S\) が与えられたとき、偶数文字目がすべて0
ならば Yes
を、 そうでないならばNo
を出力せよ。
制約
・\(S\) は0
と1
からなる長さ16の文字列
入力
\(S\)
出力
偶数文字目がすべて0
ならば Yes
を、 そうでないならばNo
を出力せよ。
解説
for
文で偶数文字目の文字を判定する。
解説
\(S\) を文字列として受け取ります。
# 入力
S=input()
偶数文字目がすべて0
であればYes
なので、偶数文字目に1つでも1
があればNo
になります。
文字列は0文字目から始まることに注意すると、偶数文字目を判定するには1
文字目から2
文字ごとに \(S\) の長さまで判定すればよいです。これはrange(1,len(S),2)
と書くことができます。
偶数文字目が1
の時No
を出力して終了exit()
します。
# 偶数文字目が1であればNoを出力
for i in range(1,len(S),2):
if S[i]=='1':
print('No')
exit()
偶数文字目がすべて0
であればYes
を出力します。
# 偶数文字目がすべて0であればYesを出力
print('Yes')
解答
# 入力
S=input()
# 偶数文字目が1であればNoを出力
for i in range(1,len(S),2):
if S[i]=='1':
print('No')
exit()
# 偶数文字目がすべて0であればYesを出力
print('Yes')