Pagini recente » Cod sursa (job #49425) | Cod sursa (job #592937) | Cod sursa (job #2879562) | Cod sursa (job #3136830) | Cod sursa (job #931233)
Cod sursa(job #931233)
#include <fstream>
#define INFINIT 0x3f3f3f3f
using namespace std;
int n, i, a[6000005], sum[6000005], best[6000005], inc, sf;
void citire ()
{
ifstream in ("ssm.in");
in >> n;
for (i = 1; i <= n; ++i)
in >> a[i];
in.close ();
}
int solve ()
{
int min = 0, bestsum = -INFINIT;
for (i = 1; i <= n; ++i)
{
best[i] = sum[i] - min;
if (min > sum[i])
min = sum[i];
if (best[i] > bestsum)
bestsum = best[i];
}
return bestsum;
}
void cauta (int bestsum)
{
int sf, inc;
for (i = 1; i <= n; ++i)
if (best[i] == bestsum)
sf = i;
for (i = sf - 1; i >= 1; --i)
if (best[i] < 0)
inc = i + 1;
}
void afis ()
{
ofstream out ("ssm.out");
for (i = inc; i <= sf; ++i)
out << a[i] << " ";
out << '\n';
out.close ();
}
int main()
{
int bestsum;
citire ();
bestsum = solve ();
afis ();
return 0;
}