Pagini recente » Diferente pentru utilizator/beer_team intre reviziile 20 si 21 | Istoria paginii utilizator/kyokeen | Istoria paginii runda/simulare-5-7 | Istoria paginii utilizator/andistroie | Cod sursa (job #460147)
Cod sursa(job #460147)
#include<fstream>
using namespace std;
ifstream in("secv2.in");
ofstream out("secv2.out");
int N,K,p;
long long S[50001];
int start,end;
long long best = -50000000;
long long Minim[50001];
long nr;
int main ()
{
int i;
in>>N>>K;
for(i=1;i<=N;i++)
{
in>>nr;
S[i]=S[i-1]+nr;
if(S[i]>Minim[i-1])
Minim[i]=Minim[i-1];
else
Minim[i]=S[i];
}
for(i=K;i<=N;i++)
{
if(S[i]-Minim[i-K]>best)
{
best = S[i]-Minim[i-K];
end = i;
start = Minim[i-K];
}
}
i=1;
while(Minim[i]!=start)
i++;
start = i+1;
out<<start<<' '<<end<<' '<<best<<'\n';
for(i=1;i<=N;i++)
out<<S[i]<<' ';
out<<'\n';
for(i=1;i<=N;i++)
out<<Minim[i]<<' ';
return 0;
}