Cod sursa(job #1073542)
Utilizator | Data | 6 ianuarie 2014 15:17:04 | |
---|---|---|---|
Problema | Secventa 2 | Scor | 80 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.51 kb |
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int main()
{
long t[50009],i,n,k,s,smax,ii,begin=0,end=0;
fin>>n>>k;
for (i=1;i<=n;i++) fin>>t[i];
smax=t[1];s=t[1];ii=1; begin=end=1;
if (s<0) s=0;
for (i=2;i<=n;i++)
{
s+=t[i];
if (s<0) {
s=0;ii=i+1;;
}
if (smax<s && i-ii+1>=k) {
smax=s;begin=ii;end=i;
}
}
fout<<begin<<' '<<end<<' '<<smax;
fin.close();fout.close();
return 0;
}