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”です。