import
java.io.*;
import
java.util.*;
import
java.util.HashMap;
class
GFG {
public
static
int
mex(
int
[] arr,
int
n,
int
K)
{
Map<Integer, Integer> mp
=
new
HashMap<Integer, Integer>();
for
(
int
v : arr) {
mp.putIfAbsent(v % K,
0
);
mp.put(v % K, mp.get(v % K) +
1
);
}
for
(
int
i =
0
; i < n; i++) {
if
(!mp.containsKey(i % K)) {
return
i;
}
mp.put(i % K, mp.get(i % K) -
1
);
if
(mp.get(i % K) <=
0
) {
mp.remove(i % K);
}
}
return
n;
}
public
static
void
main(String[] args)
{
int
arr[] = {
0
,
1
,
2
,
1
,
3
};
int
N = arr.length;
int
K =
3
;
System.out.println(mex(arr, N, K));
}
}