import
java.util.*;
class
GFG{
static
void
CheckSimilarPair(
int
arr[],
int
n)
{
int
odd_count =
0
;
int
even_count =
0
;
for
(
int
index =
0
; index < n; index++) {
if
(arr[index] %
2
==
0
)
even_count++;
else
odd_count++;
}
if
((even_count %
2
==
0
&& odd_count %
2
==
1
)
|| (even_count %
2
==
1
&& odd_count %
2
==
0
)) {
System.out.print(
"-1\n"
);
}
else
{
int
[]temp =
new
int
[
1001
];
int
max_element =
0
;
for
(
int
index =
0
; index < n; index++) {
temp[arr[index]]++;
max_element
= Math.max(max_element, arr[index]);
}
int
element1 = -
1
;
int
element2 = -
1
;
boolean
pair_exist =
false
;
for
(
int
index =
1
; index <= max_element; index++) {
if
(temp[index -
1
] >=
1
&& temp[index] >=
1
) {
element1 = index -
1
;
element2 = index;
pair_exist =
true
;
break
;
}
}
if
(pair_exist)
{
Vector<Integer> res =
new
Vector<Integer>();
for
(
int
index =
0
; index < n; index++) {
if
(arr[index] %
2
==
0
&& arr[index] != element1
&& arr[index] != element2) {
res.add(arr[index]);
}
}
for
(
int
index =
0
; index < n; index++) {
if
(arr[index] %
2
==
1
&& arr[index] != element1
&& arr[index] != element2) {
res.add(arr[index]);
}
}
for
(
int
index =
0
; index < res.size() -
1
; index +=
2
) {
System.out.print(
"{"
+ res.get(index)+
", "
+ res.get(index+
1
)+
"}"
+
" "
);
}
System.out.print(
"{"
+ element1+
", "
+ element2+
"}"
);
}
else
{
System.out.print(
"\nNo"
);
}
}
}
public
static
void
main(String[] args)
{
int
arr[] = {
11
,
12
,
16
,
14
};
int
N =
4
;
CheckSimilarPair(arr, N);
}
}