Pagini recente » Cod sursa (job #22177) | Cod sursa (job #2579480) | Cod sursa (job #2901800) | Cod sursa (job #2798847) | Cod sursa (job #2257139)
#include <bits/stdc++.h>
using namespace std;
int main()
{
ifstream fin ("ssm.in");
ofstream fout ("ssm.out");
int n;
long long currentBestSum = 0, currentBest = -1000000000;
///currentBestSum -> retine subsecventa de suma maxima care se termina la poz curenta
cin >> n;
for (int i = 1; i <= n; ++i) {
long long currentSum;
cin >> currentSum;
if (currentBestSum >= 0) { ///pana la poz i - 1 am o suma pozitiva
currentSum += currentBestSum;
}
currentBest = max (currentBest, currentSum);
currentBestSum = currentSum;
}
cout << currentBest;
return 0;
}
/// valori: 2 1 5 -10 5 6
/// CBS : 0 2 3 8 -2 5
/// CS : 2 3 8 -2 5 11
///CB = 11