Pagini recente » Cod sursa (job #895827) | Cod sursa (job #1666811) | Cod sursa (job #1192857) | Cod sursa (job #2444440) | Cod sursa (job #505303)
Cod sursa(job #505303)
#include <fstream>
#define MAX -1000000
#define nmax 6000010
int b[nmax], a[nmax];
using namespace std;
int main() {
ifstream f("ssm.in");
ofstream g("ssm.out");
int n, i, max = MAX, pozMax, pozSecv;
f >> n;
for ( i = 1; i <= n; i++ ) {
f >> a[i];
if ( i == 1 )
b[i] = a[i];
else
if ( b[i-1] + a[i] > a[i] )
b[i] = b[i-1] + a[i];
else
b[i] = a[i];
if ( b[i] > max ) {
max = b[i];
pozMax = i;
}
}
for ( i = pozMax; i > 0; i-- )
if ( b[i] - a[i] != b[i-1] ) // b[i] - a[i] == 0
{ pozSecv = i; break; }
/* for ( i = 1; i <= n; i++ )
g << b[i] << " ";
g << '\n'; */
g << max << " " << pozSecv << " " << pozMax;
return 0;
}