ABC183 - Atcoder/Python精進のための解説メモ

カレンダーアイコン
2021/07/14

ABC183 - A.ReLU

AtCoder公式 | ABC183 - A.ReLU

解答

x = int(input())
print(x if x >= 0 else 0)

要点解説メモ

  • やるだけ

ABC183 - B.Billiards

AtCoder公式 | ABC183 - B.Billiards

解答

sx, sy, gx, gy = map(int, input().split())
print((sx * gy + gx * sy) / (sy + gy))

要点解説メモ

  • sy:gyの内分点のx座標を出せば良い問題として解釈すると簡単に計算できる
  • (sx, sy) ,(gx, -gy)を通る直線とx軸の交点を頑張って出しても良い

ABC183 - C.Travel

AtCoder公式 | ABC183 - C.Travel

解答

import itertools
n, k = map(int, input().split())
ttt = [list(map(int, input().split())) for _ in range(n)]
ans = 0
for ord in itertools.permutations(range(2, n + 1), n - 1):
    cnt = 0
    curr = 0
    for i in ord:
        cnt += ttt[curr][i - 1]
        curr = i - 1
    cnt += ttt[curr][0]
    if cnt == k:
        ans += 1
print(ans)

要点解説メモ

  • 最初と最後が都市1なので、2つ目〜(n-1)つ目の回り方を全探索する

ABC183 - D.

AtCoder公式 | ABC183 - D.

解答

まだ解いていません

要点解説メモ