【AtCoder】ABC119解説(Python)

AtCoder_ABC119

AtCoder Beginner Contest 119の解説記事です。

目次

ABC119 A – Still TBD

問題

問題文の要約は以下の通りです。

問題の要約

yyyy/mm/ddの形式となっている西暦 2019 年の実在する日付の文字列 \(S\) を与えたとき、2019年4月30日またはそれ以前であれば Heisei、そうでなければ TBD と出力せよ。

制約

・\(S\) はyyyy/mm/ddの形式となっている西暦 2019 年の実在する日付の文字列

入力

\(S\)

出力

\(S\) が2019年4月30日またはそれ以前であれば Heisei、そうでなければ TBD と出力せよ。

解法1

文字列の順序として比較をする。

解説

まず入力 \(S\) を受け取ります。

s=input()

yyyy/mm/dd以前かどうかを文字列の順序として比較します。
\(S\) が2019年4月30日またはそれ以前であれば Heisei、そうでなければ TBD と出力します。

if s<='2019/04/30':
  print('Heisei')
else:
  print('TBD')

解答

s=input()
if s<='2019/04/30':
  print('Heisei')
else:
  print('TBD')

解法2

\(S\) はyyyy/mm/ddの形式となっている西暦 2019 年の実在する日付なので、月が1月から4月であるかどうかで判定する。

解説

まず入力 \(S\) を受け取ります。

s=input()


月を表す6文字から7文字目が01から04であればHeisei、そうでなければ TBD と出力します。

if s[5:7]=='01' or s[5:7]=='02' or s[5:7]=='03' or s[5:7]=='04':
  print('Heisei')
else:
  print('TBD')

解答

s=input()
if s[5:7]=='01' or s[5:7]=='02' or s[5:7]=='03' or s[5:7]=='04':
  print('Heisei')
else:
  print('TBD')

月の判定をinを使って書くこともできます。

s=input()
if s[5:7] in ['01','02','03','04']:
  print('Heisei')
else:
  print('TBD')
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次