Cod sursa(job #1318748)

Utilizator razvandraghiciDraghici Razvan razvandraghici Data 16 ianuarie 2015 12:24:13
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int i,x,pmax,qmax,p=1,q,j,s,smax,n;
int main()
{
   f>>n;
   f>>x;
   s=x;p=q=1;


   for(i=2;i<=n;i++)
   {
       f>>x;
       if(s+x>x)
         {
          s=s+x;
           q=i;}
       else
        {
             s=x;
             p=i;
             q=i;
             }
       if(smax<s)
        {smax=s;
          pmax=p;
          qmax=q;}
      else
       if(smax==s)
       {
           if(q-p<qmax-pmax)
        {
            pmax=p;qmax=q;
        }
       }
   }
   g<<smax<<" "<<pmax<<" "<<qmax;
   return 0;
}