Tổng k số

Xem PDF

Điểm: 200 (p) Thời gian: 0.5s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho dãy số nguyên dương gồm \(N\) phần tử \(a_1,a_2,..,a_N\) và số nguyên dương \(K\). Chọn ra \(K\) phần tử liên tiếp sao cho tổng của chúng là lớn nhất. In ra giá trị đó

Input

  • Dòng 1: hai số nguyên dương \(N\)\(K\) \((K \le N \le 10^5)\);
  • Dòng 2: gồm \(N\) số nguyên dương \(a_1,a_2,...,a_N\) \((a_i \le 10^9)\)

Output

  • In ra đáp án thỏa mãn yêu cầu đề bài.

Example

Test 1

Input
6 2
2 4 5 2 9 1 
Output
11

Bình luận


  • 1
    hjhjhjhjhj    3:14 p.m. 6 Tháng 4, 2024

    INF = float("-inf")
    n, k = map(int, input().split())
    a = list(map(int, input().split()))
    d = [0] * (n + 1)
    for i in range(1, n + 1):
    d[i] = d[i - 1] + a[i - 1]
    nmax = INF
    if k <= n:
    for i in range(k, n + 1):
    nmax = max(nmax, d[i] - d[i - k])
    print(nmax)
    PY3

    • 5 bình luận nữa