Cod sursa(job #1370647)

Utilizator xoSauceSergiu Ferentz xoSauce Data 3 martie 2015 16:15:18
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>
#include <cstdio>
using namespace std;

FILE *inFile = fopen("ssm.in","r");
FILE *outFile = fopen("ssm.out","w");

int main(){
	int n;
	fscanf(inFile,"%d",&n);
	int sum =0;
	int gsum =-(1<<30);
	int gstart = 0;
	int gend = 0;
	int cstart = 0;
	for(int i = 0; i < n; i++){
		int x;
		fscanf(inFile,"%d",&x);
		sum += x;
		if(sum > gsum){
			gstart = cstart;
			gend = i;
			gsum = sum;
		}
		if(sum < 0){
			cstart = i+1;
			sum =0;
		}
	}
	fprintf(outFile,"%d %d %d\n",gsum,gstart+1,gend+1);
	//out << gsum << " " << gstart+1 << " " << gend+1 << endl;
}