Pagini recente » Cod sursa (job #532334) | Cod sursa (job #571449) | Istoria paginii utilizator/margineancrina | Cod sursa (job #716635) | Cod sursa (job #993129)
Cod sursa(job #993129)
#include <iostream>
#include <fstream>
#include <cstring>
#include <string>
#include <climits>
#include <algorithm>
#include <cmath>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
#define baza 1
#define MAX 100005
#define MOD 1999999973
typedef long long int lli;
int n, k, a[MAX], i, j, xi, yi, s[MAX], maxl=INT_MIN, maxi=0, maxj=0, cool=INT_MIN;
int maxf(int a, int b)
{
if(a>b)
return a;
return b;
}
int main()
{
fin>>n>>k;
for(i=1;i<=n;i++)
{
fin>>a[i];
}
xi=1;
s[1]=a[1];
int ki=1;
a[1]=ki;
for(i=2;i<=n;i++)
{
s[i]=maxf(a[i], a[i]+s[i-1]);
ki++;
if(a[i]==s[i])
ki=1;
a[i]=ki;
}
for(i=1;i<=n;i++)
{
if(a[i]>=k && maxl<s[i])
{
maxl=s[i];
maxj=i;
maxi=i-a[i]+1;
}
}
if(maxl==INT_MIN)
maxl=0;
fout<<maxi<<" "<<maxj<<" "<<maxl;
return 0;
}