@@ -0,0 +1,22 @@
+#include <vector>
+
+class Solution {
+public:
+ std::vector<int> minBitwiseArray(std::vector<int>& nums) {
+ std::vector<int> ans;
+ for(auto num:nums){
+ if (num == 2) {
+ ans.push_back(-1);
+ continue;
+ }
+ int temp = num;
+ int t=0;
+ while (temp & 1) {
+ t++;
+ temp >>= 1;
+ ans.push_back(num ^ (1 << (t-1)));
+ return ans;
+};
@@ -0,0 +1,19 @@
+package A
+func minBitwiseArray(nums []int) []int {
+ ans := make([]int, 0, len(nums))
+ for _, num := range nums {
+ if num == 2 {
+ ans = append(ans, -1)
+ continue
+ temp := num
+ t := 0
+ for temp&1 == 1 {
+ t++
+ temp >>= 1
+ ans = append(ans, num^(1<<(t-1)))
+ return ans
+}