Cod sursa(job #3240232)

Utilizator domdiridomdidomDominik domdiridomdidom Data 13 august 2024 12:54:26
Problema Subsecventa de suma maxima Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.94 kb
#include <iostream>
#include <fstream>
#include <climits>

std::ifstream bem("ssm.in");
int n;
std::ofstream kim("ssm.out");

int tomb[6000000] = {};

void elso(){
	bem >> n;
	for(int i = 1; i < n; i++)
		bem >> tomb[i];
	int legnagyobb = INT_MIN, legnagyobbK, legnagyobbV;
	for(int i = 1; i < n; i++){
		for(int j = i; j < n; j++){
			int s = 0;
			for(int k = i; k <= j; k++)
				s += tomb[k];
			if(s > legnagyobb){
				legnagyobb = s;
				legnagyobbK = i;
				legnagyobbV = j;
			}
		}
	}
	kim << legnagyobb << " " << legnagyobbK << " " << legnagyobbV << "\n";
}
void harmadik(){
	tomb[0] = 0;
	for(int i = 1; i < n; i++){
		int szam;
		bem >> szam;
		tomb[i] = tomb[i-1] + szam;
	}
	int maxIndexK = 1, maxIndexV = 1;
	for(int i = 1; i < n; i++){
		for(int j = 0; j < i-1; j++){
			if(tomb[i] - tomb[j] > tomb[maxIndexV] - tomb[maxIndexK]){
				maxIndexK = j;
				maxIndexV = i;
			}
		}
	}
}


int main(){
	elso();
	bem.close();
	kim.close();
	return 0;
}