Pagini recente » Cod sursa (job #2010484) | Istoria paginii utilizator/best4him | Cod sursa (job #983706) | Rating Stefan Predescu (Fpre) | Cod sursa (job #1785540)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
int sumeconsec(int k, int n, int s[]){
int st=1,dr=k;
int Rsum=0, sumC=0;
for (int i=st;i<=dr;i++){
sumC+=s[i];
if (sumC>Rsum && i==dr){
Rsum=sumC;
}
if (i==dr && dr==n){
st++;
dr++;
i=st;
sumC=0;
}
}
return Rsum;
}
int sumesubsir(int k, int n, int s[], int &pozi,int &pozf){
int sumC=0, sumR=0, st=1,dr=k,sumMax=0;
pozi=0, pozf=0;
int kv=k;
for (int i=st;i<=dr;i++){
sumC+=s[i];
if (sumC>sumR && i==dr){
sumR=sumC;
pozi=st-kv+1;
pozf=dr;
}
if (dr==n && k<=n){
sumMax=sumR;
st=1;
kv++;
dr=kv;
}
if (i==dr && dr!=n){
st++;
dr++;
i=st;
}
}
g<<pozi<<" "<<pozf<<" ";
return sumMax;
}
int main()
{
int s[500001]={},n,k;
f>>n;
f>>k;
for (int i=1;i<=n;i++){
f>>s[i];
}
int pozi=0,pozf=0;
g<<sumesubsir(k,n,s,pozi,pozf);
return 0;
}