Pagini recente » Cod sursa (job #90209) | Cod sursa (job #2108530) | Cod sursa (job #46058) | Cod sursa (job #3355342) | Cod sursa (job #3345463)
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new FileReader("ssm.in"));
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("ssm.out")));
int n = Integer.parseInt(br.readLine());
StringTokenizer st = new StringTokenizer(br.readLine());
int[] v = new int[n + 1];
for (int i = 1; i <= n; i++) {
v[i] = Integer.parseInt(st.nextToken());
}
int[] dp = new int[n + 1];
int best_start = 1;
int best_end = 1;
int temp_start = 1;
dp[1] = v[1];
int maxSum = dp[1];
for (int i = 2; i <= n; i++) {
if (dp[i - 1] + v[i] < v[i]) {
dp[i] = v[i];
temp_start = i;
} else {
dp[i] = dp[i - 1] + v[i];
}
if (dp[i] > maxSum) {
maxSum = dp[i];
best_start = temp_start;
best_end = i;
}
}
out.println(maxSum + " " + best_start + " " + best_end);
br.close();
out.close();
}
}