トヨタ自動車プログラミングコンテスト2023#1(AtCoder Beginner Contest 298)の解説記事です。
目次
ABC298 A – Job Interview
問題
問題文の要約は以下の通りです。
問題の要約
o
, -
, x
からなる長さ \(N\) の文字列 \(S\) が次の条件を満たすか判定せよ。
・少なくとも1つはo
が含まれている。
・x
が含まれていない。
解説1
o
とx
の個数を数える。
解説
str.count()
を使用してo
とx
の個数を数えて条件を満たすか判定します。
解答
N = int(input())
S = input()
# 少なくとも1つは o が含まれている。かつ x が含まれていない。
if S.count('o') > 0 and S.count('x') == 0:
print('Yes')
else :
print('No')
if
文をprint
内に書くこともできます。
N = int(input())
S = input()
print('Yes' if S.count('o') > 0 and S.count('x') == 0 else 'No')
解説2
o
とx
の個数は考えず、含まれているかだけ考える。
解説
o
とx
の個数は考える必要がないため、含まれているかどうかだけ考えれば良いです。
含まれているかどうかはin S
で含まれていないかどうかはnot in S
で調べることができます。
解答
N = int(input())
S = input()
# o が含まれている。かつ x が含まれていない。
if 'o' in S and "x" not in S:
print('Yes')
else :
print('No')
if
文をprint
内に書くこともできます。
N=int(input())
S=list(input())
print('Yes' if 'o' in S and 'x' not in S else 'No')