Witam, popełniłem błąd. Wychodzą inne liczby niż z przykładu. Co zrobiłem nie tak?
import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
public class main {
public static int licznik=0;
public static void main(String[] args) throws FileNotFoundException {
int max=0;
int maxindeks=0;
int minindeks=0;
File file = new File("In0103.txt");
PrintWriter zapis = new PrintWriter("Out0103.txt");
Scanner in = new Scanner(file);
int n = in.nextInt();
int[] tab = new int[n];
int k;
int liczba;
for(int i=0; i<n; i++) {
k = in.nextInt();
tab[i] = k;
liczba=k;
if(i==n-1) {
if(liczba>=0) {
max+=liczba;
maxindeks=i+1;
}
}
else if ((max+liczba)<=0) {
max=0;
}
else {
max+=liczba;
maxindeks=i+1;
}
licznik++;
}
int o=max;
for(int x=maxindeks-1; x>0; x--) {
if(o>0) {
o-=tab[x];
minindeks=x+1;
licznik++;
}
}
System.out.println(licznik);
zapis.println(max + " " + minindeks + " " + maxindeks);
zapis.close();
}
}