Cod sursa(job #3230653)
| Utilizator | Data | 22 mai 2024 10:09:53 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.67 kb |
#include <iostream>
using namespace std;
int n,v[6000005],sp[6000005],maxi=-2e9,mini=2e9,ii,jj,pozm;
void ssm(int v[],int sp[])
{
int maxi=-1e9,mini=1e9+1;
for(int i = 1;i <= n; i++){
if(sp[i]-mini>maxi)
{
maxi=sp[i]-mini;
ii=pozm+1;
jj=i;
}
if(sp[i]<mini)
{
mini=sp[i];
pozm=i;
}
}
cout<<maxi<<" "<<ii<<" "<<jj;
}
int main()
{
cin>>n;
for(int i = 1;i <= n;i++){
cin>>v[i];
sp[i]=sp[i-1]+v[i];
}
//for(int i = 1;i <= n;i++){
// cout<<sp[i]<<" ";
//}
ssm(v,sp);
return 0;
}
