Cod sursa(job #1762155)
| Utilizator | Data | 23 septembrie 2016 12:51:32 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 5 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.57 kb |
#include <fstream>
#include <climits>
#define min_int INT_MIN;
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,x,st,dr,sc,sum;
int main()
{
fin>>n;
int s[n+10];
s[0]=0;
sum = min_int;
for(int i=1;i<=n;i++)
{
fin>>x;
s[i]=s[i-1]+x;
for(int j=1;j<=i;j++)
{
sc=s[i]-s[j-1];
if(sum<sc)
{
sum=sc;
st=i;
dr=j;
}
}
}
fout<<sum<<' '<<st<<' '<<dr;
return 0;
}
