func_code_string: #include <bits/stdc++.h>   using namespace std;   long long n, k, ans = 0, a, b;   vector<long long> v, sum, sumk;   vector<pair<long long, long long> > maxsumk, maxsum2k;   int main() {     cin >> n >> k;     v.resize(n);     for (int i = 0; i < n; i++) cin >> v[i];     sum.resize(n);     sumk.resize(n);     sum[0] = v[0];     for (int i = 1; i < n; i++) sum[i] = sum[i - 1] + v[i];     sumk[k - 1] = sum[k - 1];     for (int i = k; i < n; i++) sumk[i] = sum[i] - sum[i - k];     maxsumk.resize(n, {0, 0});     maxsumk[k - 1].first = sumk[k - 1];     maxsumk[k - 1].second = k - 1;     for (int i = k; i < n; i++) {       maxsumk[i].first = max(maxsumk[i - 1].first, sumk[i]);       if (max(maxsumk[i - 1].first, sumk[i]) == maxsumk[i - 1].first)         maxsumk[i].second = maxsumk[i - 1].second;       else         maxsumk[i].second = i;     }     maxsum2k.resize(n, {0, 0});     maxsum2k[2 * k - 1].first = sumk[2 * k - 1] + maxsumk[2 * k - 1 - k].first;     maxsum2k[2 * k - 1].second = 2 * k - 1;     for (int i = 2 * k; i < n; i++) {       maxsum2k[i].first =           max(sumk[i] + maxsumk[i - k].first, maxsum2k[i - 1].first);       if (max(sumk[i] + maxsumk[i - k].first, maxsum2k[i - 1].first) ==           maxsum2k[i - 1].first)         maxsum2k[i].second = maxsum2k[i - 1].second;       else         maxsum2k[i].second = i;     }     int v = maxsum2k[n - 1].second;     b = v - k + 2;     a = maxsumk[v - k].second - k + 2;     cout << a <<     << b;   }   