Cod sursa(job #1529747)

Utilizator ivan.tudorIvan Tudor ivan.tudor Data 21 noiembrie 2015 11:01:35
Problema Subsecventa de suma maxima Scor 95
Compilator c Status done
Runda Arhiva educationala Marime 0.62 kb
#include <stdio.h>
#include <limits.h>

int main()
{
  FILE*fin,*fout;
  int n,i,sc,scmax,a,u,p,pmax,max;
  fin=fopen("ssm.in","r");
  fscanf(fin,"%d", &n);
  sc=0;
  scmax=0;
  max=INT_MIN;
  for(i=0;i<n;i++){
    fscanf(fin,"%d",&a);
    sc+=a;
    if(a>max){
      max=a;
      u=i+1;
      pmax=i+1;
    }
    if(sc<0){
      sc=0;
      p=i+2;
    }
    else
      if(sc>scmax){
        scmax=sc;
        u=i+1;
        pmax=p;
      }
    }
  fclose(fin);
  if(scmax==0)
    scmax=max;
  fout=fopen("ssm.out","w");
  fprintf(fout,"%d %d %d", scmax,pmax,u);
  fclose(fin);
  return 0;
}