Advertisement
Guest User

Untitled

a guest
Apr 7th, 2020
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.81 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. long long qs[1000100];
  4. int maxx[1000100];
  5. int main(){
  6.  
  7.     int n,k;
  8.     scanf(" %d %d",&n,&k);
  9.  
  10.     for(int i = 1;i<=n;i++){
  11.         scanf(" %lld",&qs[i]);
  12.         qs[i] += qs[i-1];
  13.  
  14.     }
  15.     /*
  16.     cout << endl;
  17.     for (int i = 1;i<=n;i++) cout << qs[i] << " ";
  18.     cout << endl;
  19.     */
  20.     for(int i = n;i>=1;i--){
  21.         maxx[i] = i;
  22.         if(i!=n+1 && qs[maxx[i+1]] >= qs[i]) maxx[i] = maxx[i+1];
  23.     }
  24.     /*
  25.     for (int i = 1;i<=n;i++) cout << maxx[i] << " ";
  26.     cout << endl;
  27.     */
  28.     long long ans = -1e18;
  29.     long long minn = 1e18;
  30.     for(int i = k;i<=n;i++){
  31.         minn = min(minn,qs[i-k]);
  32.         ans = max(ans,qs[maxx[i]] - minn);
  33.         //cout << minn << " "  << ans << endl;
  34.     }
  35.     printf("%lld",ans);
  36.  
  37.  
  38.  
  39.  
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement