Pagini recente » Cod sursa (job #1233619) | Cod sursa (job #1420918) | Cod sursa (job #637639) | Cod sursa (job #1443456) | Cod sursa (job #2905712)
import java.io.FileReader;
import java.io.PrintWriter;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
try (Scanner sc = new Scanner(new FileReader("ssm.in"))) {
int n = sc.nextInt();
int[] a = new int[n];
for (int i = 0; i < n; ++i) {
a[i] = sc.nextInt();
}
int[] dp = new int[n];
int[] start = new int[n];
dp[0] = a[0];
start[0] = 0;
int max = a[0];
int last = 0;
for (int i = 1; i < n; ++i) {
if (dp[i - 1] + a[i] > a[i]) {
dp[i] = dp[i - 1] + a[i];
start[i] = start[i - 1];
} else {
dp[i] = a[i];
start[i] = i;
}
if (max < dp[i]) {
max = dp[i];
last = i;
}
}
PrintWriter pw = new PrintWriter("ssm.out");
pw.print(max + " " + (start[last] + 1) + " " + (last + 1));
pw.flush();
} catch (Exception e) {
e.printStackTrace();
}
}
}