Cod sursa(job #2440805)
Utilizator | Data | 19 iulie 2019 13:28:09 | |
---|---|---|---|
Problema | Secventa 2 | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.59 kb |
#include<fstream>
using namespace std;
ifstream cin("secv2.in");
ofstream cout("secv2.out");
int n,k;
int s[50005];
int Min[50005];
int start,stop,sum=-1e9;
int main(){
cin>>n>>k;
for(int i=1;i<=n;i++){
int x; cin>>x;
s[i]=s[i-1]+x;
}
for(int i=0;i<=n-k;i++){
if(i>0 && s[Min[i-1]]>s[i])
Min[i]=i;
else Min[i]=Min[i-1];
if(sum<s[i+k]-s[Min[i]]){
sum=s[i+k]-s[Min[i]];
start=Min[i]+1;
stop=i+k;
}
}
cout<<start<<' '<<stop<<' '<<sum;
}