Cod sursa(job #2113079)
| Utilizator | Data | 24 ianuarie 2018 11:09:28 | |
|---|---|---|---|
| Problema | Secventa 2 | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.61 kb |
#include<fstream>
#include<climits>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int Sum[50003],N,K,Max=INT_MIN,Sol1,Sol2;
pair<int, int> Min;
int main()
{
fin>>N>>K;
for(int i=1;i<=N;i++)
{
int X;
fin>>X;
Sum[i]=Sum[i-1]+X;
}
for(int i=K;i<=N;i++)
{
if(Min.first>Sum[i-K])
Min=make_pair(Sum[i-K],i-K);
if(Sum[i]-Min.first>Max)
{
Max=Sum[i]-Min.first;
Sol1=Min.second+1;
Sol2=i;
}
}
fout<<Sol1<<" "<<Sol2<<" "<<Max<<'\n';
}
