トヨタシステムズプログラミングコンテスト2022(AtCoder Beginner Contest 279)の解説記事です。
目次
ABC279 A – wwwvvvvvv
問題
問題文の要約は以下の通りです。
問題の要約
\(v\) と \(w\) のみからなる文字列 \(S\) が与えたとき、\(v\) を1、\(w\) を2としたときの合計はいくつか求めよ。
入力
\(S\)
出力
答えを整数として出力せよ。
解説1
for文で1文字づつvであるかwであるか確認する。
解説
まず、答えAnsを0として初期化しておきます。Sのそれぞれの文字sに対して、sがvであればAnsに1を加算、sがwならAnsに2を加算したときの合計が答えになります。
解答
S = input()
Ans = 0
for s in S:
if s == 'v':
Ans += 1
else:
Ans += 2
print(Ans)解説2
countを使用する。
解説
Sの中のvの数とwの2倍を足し合わせたものが答えになります。文字の数はcountで求めることができます。
解答
S = input()
print(S.count('v')+2*S.count('w'))ABC279 B – LOOKUP
問題
問題文の要約は以下の通りです。
問題の要約
英小文字からなる文字列 \(S\) , \(T\) が与えられたとき、 \(T\) が \(S\) の連続する部分文字列かどうか判定せよ。
入力
\(S\)
\(T\)
出力
\(T\) が \(S\) の連続する部分文字列なら Yes 、そうでないなら No と出力せよ。
解説
inを使用する。
解説
Pythonでは文字列に対して、部分文字列がどうかをinで判定することができます。
解答
S=input()
T=input()
if T in S:
print('Yes')
else:
print('No')if文をprint内でまとめると次のようになります。
S=input()
T=input()
print('Yes' if T in S else 'No')
