ABC189 - Atcoder/Python精進のための解説メモ
2022/12/27
ABC189 - A.Slot
AtCoder公式 | ABC189 - A.Slot解答
ccc = input()
print('Won' if len(set(ccc)) == 1 else 'Lost')
別解
ccc = input()
print('Won' if ccc[0] == ccc[1] == ccc[2] else 'Lost')
要点解説メモ
- cccをリストとして考えて、要素がすべて同じであることを確認すれば良い
- いろんな書き方がありそう
ABC189 - B.Alcoholic
AtCoder公式 | ABC189 - B.Alcoholic解答
n, x = map(int, input().split())
x *= 100
cnt = 0
ans = -1
for i in range(n):
v, p = map(int, input().split())
cnt += v * p
if cnt > x:
ans = i + 1
break
print(ans)
要点解説メモ
- floatの計算は誤差でるので100倍して計算するのが良さそう
ABC189 - C.
AtCoder公式 | ABC189 - C.解答
n = int(input())
aaa = tuple(map(int, input().split()))
ans = 0
for l in range(n):
min_a = aaa[l]
for r in range(l, n):
min_a = min(min_a, aaa[r])
ans = max(ans, min_a * (r - l + 1))
print(ans)
要点解説メモ
- 尺取り法の典型
- 通常のpythonだと実行時間間に合わないのでpypyで出す(再帰関数以外は基本pypyのほうがはやい)
ABC189 - D.
AtCoder公式 | ABC189 - D.解答
まだ解いていません