Cod sursa(job #2120404)
| Utilizator | Data | 2 februarie 2018 13:53:57 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.68 kb |
#include <iostream>
#include <fstream>
#include <limits.h>
using namespace std;
int main()
{
ifstream f("ssm.in");
ofstream g("ssm.out");
int N, S;
int max_ossz= -INT_MAX, max_a=1, max_b=1, ossz=0, a=1;
//cin>>N;
f>>N;
for(int i=1; i<=N; i++)
{
//cin>>S;
f>>S;
if(ossz < 0)
{
ossz = S;
a = i;
}
else
ossz += S;
if(max_ossz < ossz)
{
max_ossz = ossz;
max_a = a;
max_b = i;
}
}
//cout<<max_ossz<<" "<<max_a<<" "<<max_b;
g<<max_ossz<<" "<<max_a<<" "<<max_b;
return 0;
}
