Cod sursa(job #1939046)
Utilizator | Mosnegutu Vlad-Alexandru vladmosnegutu | Data | 25 martie 2017 13:35:35 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.63 kb |
#include <fstream>
#include <climits>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main()
{
int Max=INT_MIN,n,i,f,j,Min=INT_MAX,x,v;
fin>>n;
int s[n];
for (j=1;j<=n;j++) {
fin>>v;
s[j]=s[j-1]+v;
if (Min>s[j-1]) {
Min=s[j-1];
x=j-1;
}
if (Max<s[j]-Min) {
Max=s[j]-Min;
i=x;
f=j;
}
}
fout<<Max<<" "<<i<<" "<<f;
/*for (j=1;j<=n,j++) {
s[j]=s[j-1]+v[j];
m[j]=min(m[j-1],s[j]);
Max=max(s[j]-m[j-1],Max);
}*/
return 0;
}