You are given an integer n
and an integer p
representing an array arr
of length n
where all elements are set to 0's, except position p
which is set to 1. You are also given an integer array banned
containing restricted positions. Perform the following operation on arr
:
k
if the single 1 is not set to a position in banned
.Return an integer array answer
with n
results where the ith
result is the minimum number of operations needed to bring the single 1 to position i
in arr
, or -1 if it is impossible.
Example 1:
Input: n = 4, p = 0, banned = [1,2], k = 4
Output: [0,-1,-1,1]
Explanation:
Example 2:
Input: n = 5, p = 0, banned = [2,4], k = 3
Output: [0,-1,-1,-1,-1]
Explanation:
[0, 2]
because position 2 is in banned.Example 3:
Input: n = 4, p = 2, banned = [0,1,3], k = 1
Output: [-1,-1,0,-1]
Explanation:
Perform operations of size 1 and 1 never changes its position.
Constraints:
1 <= n <= 105
0 <= p <= n - 1
0 <= banned.length <= n - 1
0 <= banned[i] <= n - 1
1 <= k <= n
banned[i] != p
banned
are unique NeetCodeIO