Cod sursa(job #1918856)
| Utilizator | Data | 9 martie 2017 17:06:18 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 25 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.59 kb |
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
long long s, S;
int n, i, j, v[6000001], st, dr;
int main()
{
f >> n;
for(i=1;i<=n;i++)
f >> v[i];
for(i=1;i<n;i++)
{
s=v[i];
for(j=i+1;j<=n;j++){
s=s+v[j];
if(s > S){
S=s;
st=i;
dr=j;
}
else if(s==S&&j-i+1<dr-st+1){
st=i;
dr=j;
}
}
}
g << S << " " << st << " " << dr << '\n';
return 0;
}
