Cod sursa(job #1677676)

Utilizator BrandonChris Luntraru Brandon Data 6 aprilie 2016 18:39:06
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>

using namespace std;

ifstream cin("ssm.in");
ofstream cout("ssm.out");

int n, min_Psum = 0x3f3f3f3f, curr_sum, max_sum = -0x3f3f3f3f, temp_st, st, ed;

int main() {
  cin >> n;

  for(int i = 1; i <= n; ++i) {
    int x;
    cin >> x;

    if(curr_sum < min_Psum) {
      min_Psum = curr_sum;
      temp_st = i;
    }

    curr_sum += x;

    if(curr_sum - min_Psum > max_sum) {
      max_sum = curr_sum - min_Psum;
      st = temp_st;
      ed = i;
    }
  }

  cout << max_sum << ' ' << st << ' ' << ed << '\n';
  return 0;
}