ABC176 復習
C問題までは簡単なんだけどなぁ・・。
A - Takoyaki
単純に、全体で作成したい個数を、一回あたりの個数で割った数に時間をかければ良いだけです。 余りが出る場合は1回分の時間を足すことを忘れずに。
n, x, t = map(int, input().split()) ans = n // x * t if n % x > 0: ans += t print(ans)
B - Multiple of 9
9で割り切れるか?をそのまま書いたら通ってしまいました。
公式解説によれば、Pythonはそのままでいけるみたいですね。
n = int(input()) if n % 9 == 0: print('Yes') else: print('No')
C - Step
配列において、a[i] > a[i + 1]
になる場合に差を足していけば答えが求まります。
また、その場合にa[i + 1]の値をa[i]と同じにすることを忘れずに。
あまり深く考えずとも解けるのではないでしょうか。
n = int(input()) a = list(map(int, input().split())) ans = 0 for i in range(n - 1): if a[i] > a[i + 1]: diff = a[i] - a[i + 1] ans += diff a[i + 1] += diff print(ans)
D - Wizard in Maze
おそらく、幅優先探索の亜種のように考えれば解けると思ったのですが、解けませんでした。
幅優先探索をしつつ、DP配列を持ってワープの最小値を更新していくようなイメージではないのでしょうか。
ひとまず解説を待つことにします。
総括
C問題までがとても簡単で、おそらくC問題も茶色Diffはないのではないでしょうか。
D問題以降を解けるようにならないと、レーティングは上がっていかないでしょうね・・。
精進あるのみ。