Cod sursa(job #948327)

Utilizator costyrazvyTudor Costin Razvan costyrazvy Data 9 mai 2013 22:28:21
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

using namespace std;
int bst,a[6000001],pozi,pozf,n,i,mx;
int main()
{
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    f>>n;f>>a[1];bst=a[1];pozi=1;pozf=1;mx=a[1];
    for (i=2;i<=n;i++)
    {
        f>>a[i];bst=max(bst+a[i],a[i]);
        if (bst==a[i] && bst>-1) pozi=i,pozf=i;
         if (bst>mx)
         {
              if (bst!=a[i])
              mx=bst,pozf=i;
          else
               mx=bst,pozi=pozf=i;
         }

    }
    for (i=pozi-1;i>=0 && a[i]==0;i--)
      pozi--;
    g<<mx<<" "<<pozi<<" "<<pozf<<'\n';
    f.close();
    g.close();
    return 0;
}