[AtCoder]ABC047A ~ 051A[Python]

プログラミング

PythonでAtCoderの過去問を解いていきます。

ABC047A – キャンディーと2人の子供

自分の回答

a, b, c = map(int, input().split())
candies = [a, b, c]
candies.sort()

if candies[0] + candies[1] == candies[2]:
  print("Yes")
else:
  print("No")

入力された値をリスト(candies)に入れて、ソートをかけます。そして、リストの中の、最も大きい値とその他二つの値を足し合わせた値が等しければ、Yesを出力します。

もっとよくする

candies = sorted(list(map(int,input().split())))

if candies[0] + candies[1] == candies[2]:
  print("Yes")
else:
  print("No")

他の方のを参考にして、入力の部分を変更しました。直接、リストに突っ込んだ方が、便利ですね。

ABC048A – AtCoder *** Contest

自分の回答

a, b, c = map(str, input().split())
print(a[0] + b[0] + c[0])

入力の段階で、スペース区切りで、それぞれの変数に渡しているのがいい点ですね。そして、それらの変数の先頭の文字を繋げて出力すれば、答えとなります。

ABC049A – 居合を終え、青い絵を覆う

自分の回答

c = str(input())

if c == "a" or c == "i" or c == "u" or c == "e" or c == "o":
  print("vowel")
else:
  print("consonant")

そのままですね。入力された文字が、”a” or “i” or “u” or “e” or “o”だったら、”vowel”を出力します。

ABC050A – Addition and Subtraction Easy

自分の回答

A, op, B = input().split()

if op == "+":
  print(int(A) + int(B))
else:
  print(int(A) - int(B))

変数opの記号によって、処理を変えればいいですね。気をつけるのは、入力された時には全てstr型で受け付けているので、計算する時にはint型に変換しましょう。

ABC051A – Haiku

自分の回答

s = input()
print(s.replace(",", " "))

replace関数を使って、カンマ(,)をスペースに変換すればいいですね。

タイトルとURLをコピーしました