Pagini recente » Cod sursa (job #2332480) | Cod sursa (job #974416) | Cod sursa (job #1619102) | Cod sursa (job #2593752) | Cod sursa (job #873026)
Cod sursa(job #873026)
#include <iostream>
#include <fstream>
#include <limits>
using namespace std;
int main()
{
ifstream ifs("ssm.in");
ofstream ofs("ssm.out");
int N;
ifs>>N;
int *m=new int[N];
for(int i=0;i<N;i++)
ifs>>m[i];
int *best=new int[N];
int maxsum=0;
int l=0,r=0;
best[0]=m[0];
cout<<N<<endl;
for(int i=1;i<N;i++){
int tmp=best[i-1]+m[i];
if(m[i]<tmp){
best[i]=tmp;
r=i;
}
if(m[i]>tmp){
best[i]=m[i];
l=r=i;
}
// if(m[i]==tmp){
// l=r=i;
// best[i]=tmp;
// }
if(best[i]>maxsum)
maxsum=best[i];
}
// cout<<"l "<<l+1<<"\n";
// cout<<"r "<<r+1<<"\n";
// cout<<"m "<<maxsum<<"\n";
ofs<<maxsum<<" "<<l+1<<" "<<r+1;
return 0;
}