import
java.util.ArrayList;
import
java.util.Collections;
import
java.util.Comparator;
class
GFG {
public
static
class
Pair {
int
first =
0
;
int
second =
0
;
public
Pair(
int
first,
int
second) {
this
.first = first;
this
.second = second;
}
}
public
static
void
predictIndices(
int
arr[],
int
N)
{
int
sum =
0
;
ArrayList<Pair> v =
new
ArrayList<Pair>();
for
(
int
i =
0
; i < N; i++) {
v.add(
new
Pair(arr[i], i));
sum += arr[i];
}
Collections.sort(v,
new
Comparator<Pair>() {
@Override
public
int
compare(Pair p1, Pair p2){
return
p1.first - p2.first;
}
});
int
c =
1
;
for
(
int
i = N -
2
; i >=
0
; i--) {
sum -= v.get(i +
1
).first;
if
(sum < v.get(i +
1
).first) {
break
;
}
else
{
c++;
}
}
ArrayList<Integer> ans =
new
ArrayList<Integer>();
for
(
int
i = N -
1
; i >= N - c; i--) {
ans.add(v.get(i).second);
}
Collections.sort(ans);
for
(
int
i =
0
; i < ans.size(); i++) {
System.out.print(ans.get(i) +
" "
);
}
}
public
static
void
main(String args[]) {
int
arr[] = {
1
,
2
,
4
,
3
};
int
N = arr.length;
predictIndices(arr, N);
}
}