CF1364C Ehab and Prefix MEXs
Description
Given an array $ a $ of length $ n $ , find another array, $ b $ , of length $ n $ such that:
- for each $ i $ $ (1 \le i \le n) $ $ MEX(\{b_1 $ , $ b_2 $ , $ \ldots $ , $ b_i\})=a_i $ .
The $ MEX $ of a set of integers is the smallest non-negative integer that doesn't belong to this set.
If such array doesn't exist, determine this.
Input Format
The first line contains an integer $ n $ ( $ 1 \le n \le 10^5 $ ) — the length of the array $ a $ .
The second line contains $ n $ integers $ a_1 $ , $ a_2 $ , $ \ldots $ , $ a_n $ ( $ 0 \le a_i \le i $ ) — the elements of the array $ a $ . It's guaranteed that $ a_i \le a_{i+1} $ for $ 1\le i < n $ .
Output Format
If there's no such array, print a single line containing $ -1 $ .
Otherwise, print a single line containing $ n $ integers $ b_1 $ , $ b_2 $ , $ \ldots $ , $ b_n $ ( $ 0 \le b_i \le 10^6 $ )
If there are multiple answers, print any.
Explanation/Hint
In the second test case, other answers like $ [1,1,1,0] $ , for example, are valid.