Official

A - 長距離ドライブの休憩計画 / Rest Plan for a Long-Distance Drive Editorial by sounansya


AtCoder をはじめたばかりで何をしたらよいか分からない方は、まずは practice contest の問題 A「Welcome to AtCoder」を解いてみてください。基本的な入出力の方法が載っています。
また、プログラミングコンテストの問題に慣れていない方は、AtCoder Beginners Selection の問題をいくつか解いてみることをおすすめします。


すべての区間を走り終えるまでにかかる合計時間は走行時間と休憩時間の総和です。

走行時間は \(A_1\) から \(A_N\) までの総和なので、これらの総和 for 文などで求めることができます。

次に、休憩時間の総和を求めることを考えます。今走り終えた区間が

  • \(K\) の倍数
  • 区間 \(N\) ではない

場合に休憩します。これらの条件を for 文でそれぞれ条件を満たしているか確認し、満たしている場合は答えに \(1\) 足せば良いです。

実装例(Python3)

n, k = map(int, input().split())
a = list(map(int, input().split()))
ans = sum(a)
for i in range(1, n + 1):
    if i % k == 0 and i != n:
        ans += 1
print(ans)

posted:
last update: