Pagini recente » Cod sursa (job #1624003) | Cod sursa (job #1864953) | Cod sursa (job #1242179) | Cod sursa (job #1993245) | Cod sursa (job #1879368)
// int n,k,a[100001],SumaPartiala,SumaMax=0,dr;
cin>>n>>k;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=1;i<=k;i++) SumaPartiala=SumaPartiala+a[i]; // suma primelor k numere
SumaMax=SumaPartiala;
ultim=k;
for(int i=k+1;i<=n;i++)
{
SumaPartiala=SumaPartiala+a[i]-a[i-k]; // se aduna urmatorul numar i si se scade primul din secventa de k numere anterioara adica i-k
if(SumaPartiala>SumaMax)
{
SumaMax=SumaPartiala; // daca suma este mai mare decat suma anterior calculata de k numere se muta ca prima pozitie pe pozitia curenta
ultim=i;
}
}
for(int i=ultim-k+1;i<=ultim;i++) cout<<a[i]<<" ";
return 0;
}