Pagini recente » Cod sursa (job #2296047) | Cod sursa (job #834977) | Cod sursa (job #829304) | Cod sursa (job #2552870) | Cod sursa (job #308273)
Cod sursa(job #308273)
#include<iostream>
#include<fstream>
using namespace std;
int main(){
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int n,k,s[50002],i,a,m,M,en[2],st[2]={1,1},r[2];
fin>>n>>k;
fin>>s[0];
en[0]=en[1]=n-1;
for (i=1;i<n;i++){
fin>>s[i];
s[i]+=s[i-1];
}
a=n-k;
m=1000000000;
for (i=0;i<a;i++)
if (s[i]<m){
m=s[i];
st[0]=i+2;
}
M=-1000000000;
for (i=st[0]+k-2;i<n;i++)
if (M<s[i]){
M=s[i];
en[0]=i+1;
}
if (m==1000000000)
r[0]=M;
else
if (M==-1000000000)
r[0]=m;
else
r[0]=M-m;
M=-1000000000;
m=1000000000;
for (i=n-1;i>=k;i--)
if (s[i]>m){
M=s[i];
en[1]=i+1;
}
for (i=0;i<en[1]-k;i++)
if (m>s[i]){
m=s[i];
st[1]=i+2;
}
if (m==1000000000)
r[1]=M;
else
if (M==-1000000000)
r[1]=m;
else
r[1]=M-m;
if (r[0]>r[1])
fout<<st[0]<<" "<<en[0]<<" "<<r[0];
else
fout<<st[1]<<" "<<en[1]<<" "<<r[1];
fout.close();
}