A subsequence is obtained by deleting some(possibly zero) elements of a sequence without changing the order of the elements in the sequence.
Given an array of n non-negative integers, find the smallest non-negative integer that can not be obtained as a bitwise OR of some subsequence of the given array. The bitwise OR of empty subsequence is 0.
example given arr = [1,3] output: 2
explanation: [] -> bitwise OR is 0 [1] -> bitwise OR is 1 [1,3] -> bitwise OR is 3 [3] -> bitwise OR is 3 so 2 is the smallest non-negative integer that is not possible to form using the bitwise OR of a subsequence of the given array.
Constraints : 1 <= n <= 10^5 0 <= arr[i] <= 10^9
Please help in upsolving this problem. Any ideas, hints or solutions will be helpful.