I have written the code by following the editorial on MVAL but still it is giving me wrong answer can anyone help what am i missing ?
`import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(bf.readLine());
PrintWriter out = new PrintWriter(System.out);
while (T-- > 0) {
int N = Integer.parseInt(bf.readLine());
String[] ip = bf.readLine().split(" ");
long[] nums = new long[N + 1];
int j = 0;
for (String str : ip) {
nums[++j] = Long.parseLong(str);
}
int ans = 0;
ArrayList<Integer> res = new ArrayList<>();
int count = 0;
//count pos nums
for (int i=1;i<=N;i++) {
if (nums[i] >= 0) {
count++;
ans += nums[i];
}
}
for (int i = 1; i <= count; i++) {
if (nums[i] < 0)
res.add(i);
}
for (int i = count+1; i <= N; i++) {
if (nums[i] >= 0) {
res.add(i);
}
}
out.println(ans);
StringBuilder sb = new StringBuilder();
sb.append(res.size()+" ");
for (int x : res)
sb.append(x + " ");
out.println(sb);
}
out.flush();
}
}`