[AtCoder]ABC052A ~ 056A[Python]

プログラミング

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

ABC052A – Two Rectangles

問題

二つの長方形があります。 一つ目の長方形は、縦の辺の長さがA、横の辺の長さがBです。 二つ目の長方形は、縦の辺の長さがC、横の辺の長さがDです。
この二つの長方形のうち、面積の大きい方の面積を出力してください。 なお、二つの長方形の面積が等しい時は、その面積を出力してください。

自分の回答

A, B, C, D = map(int, input().split())
print(max(A * B, C * D))

max関数を使えばいいですね。

ABC 053A – ABC/ARC

問題

すめけくんは現在のレートが 1200未満ならば AtCoder Beginner Contest (ABC) に、そうでなければ AtCoder Regular Contest (ARC) に参加することにしました。 すめけくんの現在のレート xが与えられます。すめけくんが参加するコンテストが ABC ならば ABC と、そうでなければ ARC と出力してください。

自分の回答

x = int(input())
if x < 1200:
  print("ABC")
else:
  print("ARC")

xが1200未満なら”ABC”をそれ以外は”ARC”を出力すればいいですね。

ABC 054A – One Card Poker

問題

AliceとBobは、2人で1枚ポーカーを行います。
1枚ポーカーは、トランプを用いて行う2人ゲームです。

今回使用するトランプでは、各カードに 1 から 13 までの数が書かれています。
カードの強さは、カードに書かれている数で決まり,強さの基準は以下の通りです。
弱 2<<3<<4<<5<<6<<7<<8<<9<<10<<11<<12<<13<<1 強

自分の回答

A, B = map(int, input().split())

if A == 1:
  A = 14
if B == 1:
  B = 14

if A > B:
  print("Alice")
elif A < B:
  print("Bob")
else:
  print("Draw")

AとBが1だった場合は、14に変換してから、AとBの大きさを比べて結果を出力してます。

ABC 055A – Restaurant

問題

すぬけくんはレストランに通うのが好きです。すぬけくん行きつけのレストランは何を食べても 1食 800で、15食食べる毎にその場で200円もらえます。
すぬけくんは今までで合計N食食べました。 今までに払った金額をx円、レストランからもらった金額をy円として、x−yを求めなさい。

自分の回答

N = int(input())
survice = int(N / 15)
print(N * 800 - survice * 200)

survice = n / 15というところで、値引き量を求めています。int型を指定しないと、小数になってしまいますので、気をつけましょう。

ABC 056A – Honest Or Dishonest

シカのAtCoDeerくんとTopCoDeerくんが「正直者か嘘つきか」ゲームをしています。 このゲームでは、正直者は常にほんとうのことを言い、嘘つきは常に嘘を言います。 文字aとbが入力として与えられます。これらはそれぞれ H か D のどちらかです。
a=H のとき、AtCoDeerくんは正直者です。a=D のとき、AtCoDeerくんは嘘つきです。b=H のとき、AtCoDeerくんは「TopCoDeerくんは正直者だ」と発言しています。b=D のとき、AtCoDeerくんは「TopCoDeerくんは嘘つきだ」と発言しています。
これらから判断して、TopCoDeerくんが正直者かどうか判定してください。

自分の回答

a, b = input().split()

if a == b:
  print("H")
else:
  print("D")

問題文が長くて難しそうな印象を受けますが、要はaとbが等しい時は”H”、aとbが異なる時は”D”を出力すれば良いですね。

a = H,b = H の時、AtCoDeerは正直者で「TopCoDeerくんは正直者だ」と発言しているので、TopCoDeerくんは正直者となるので、答えは”H”です。
a = H,b = D の時、AtCoDeerは正直者で「TopCoDeerくんは嘘つきだ」と発言しているので、TopCoDeerくんは正直者となるので、答えは”D”です。
a = D,b = H の時、AtCoDeerは嘘つきで「TopCoDeerくんは正直者だ」と発言しているので、TopCoDeerくんは嘘つきとなるので、答えは”D”です。
a = D,b = D の時、AtCoDeerは嘘つきで「TopCoDeerくんは嘘つきだ」と発言しているので、TopCoDeerくんは正直者となるので、答えは”H”です。

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