【AtCoder】ABC267解説(Python)

NECプログラミングコンテスト2022 (AtCoder Beginner Contest 267)の解説記事です。

目次

ABC267 A – Saturday

問題

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

問題の要約

文字列MondayTuesdayWednesdayThursdayFridayを与えたとき、土曜日まであと何日か求めよ。

制約

・\(S\) は MondayTuesdayWednesdayThursdayFriday のいずれかの文字列

入力

\(S\)

出力

答えを整数として出力せよ。

解説1

if文で条件分岐を行う。

解説

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

S = input()

\(S\) は Mondayのとき5、 Tuesdayのとき4Wednesdayのとき3、 Thursdayのとき2Fridayのとき1を出力します。

if S == "Monday":
  print(5)
elif S == "Tuesday":
  print(4)
elif S == "Wednesday":
  print(3)
elif S == "Thursday":
  print(2)
elif S == "Friday":
  print(1)

解答

S = input()
if S == "Monday":
  print(5)
elif S == "Tuesday":
  print(4)
elif S == "Wednesday":
  print(3)
elif S == "Thursday":
  print(2)
elif S == "Friday":
  print(1)

解説2

曜日を配列として持つ。

解説

入力として受け取る可能性のある曜日を配列で持っておきます。
例えば、逆順で持っておけば土曜日まで何日か考えやすくなります。

yobi=['Friday','Thursday','Wednesday','Tuesday','Monday']

入力を受け取り、順に比較して一致したら配列の添え字+1が答えになります。

S=input()
for i in range(5):
  if S==yobi[i]:
    print(i+1)

解答

yobi=['Friday','Thursday','Wednesday','Tuesday','Monday']
S=input()
for i in range(5):
  if S==yobi[i]:
    print(i+1)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次