import
java.io.*;
import
java.util.*;
class
GFG {
static
final
int
MAXN =
100005
;
static
void
performQueryOne(
int
num,
int
[] left,
int
[] right,
int
[] position,
int
[] mark)
{
left[
0
] = left[
0
] +
1
;
position[num] = left[
0
];
mark[num] =
1
;
}
static
void
performQueryTwo(
int
num,
int
[] left,
int
[] right,
int
[] position,
int
[] mark)
{
right[
0
] = right[
0
] +
1
;
position[num] = right[
0
];
mark[num] =
2
;
}
static
void
performQueryThree(
int
num,
int
[] left,
int
[] right,
int
[] position,
int
[] mark)
{
int
toright, toleft;
if
(mark[num] ==
2
) {
toright = right[
0
] - position[num];
toleft = position[num] -
1
+ left[
0
];
}
else
if
(mark[num] ==
1
) {
toleft = left[
0
] - position[num];
toright = position[num] -
1
+ right[
0
];
}
else
{
System.out.println(
"The number is not there"
);
return
;
}
System.out.println(
"The number of elements to right of "
+ num
+
": "
+ toright);
System.out.println(
"The number of elements to left of "
+ num
+
": "
+ toleft);
}
public
static
void
main(String[] args)
{
int
[] left = {
0
}, right = {
0
};
int
[] position =
new
int
[MAXN];
int
[] mark =
new
int
[MAXN];
Arrays.fill(position,
0
);
Arrays.fill(mark,
0
);
int
num =
3
;
performQueryOne(num, left, right, position, mark);
num =
5
;
performQueryTwo(num, left, right, position, mark);
num =
2
;
performQueryOne(num, left, right, position, mark);
num =
4
;
performQueryOne(num, left, right, position, mark);
num =
3
;
performQueryThree(num, left, right, position, mark);
}
}