easiest solution in c++
IntuitionAs length of array are too big so we cannot convert it to decimal , so we need to think direct additionApproachComplexityO(n)
Time complexity: O(n)

Sp
# Intuition
<!-- Describe your first thoughts on how to solve this problem. -->
As length of array are too big so we cannot convert it to decimal , so we need to think direct addition 
# Approach
<!-- Describe your approach to solving the problem. -->

# Complexity$$O(n)$$
- Time complexity: $$O(n)$$
<!-- Add your time complexity here, e.g.  -->

- Space complexity:$$O(1)$$
<!-- Add your space complexity here, e.g. $$O(n)$$ -->

# Code
```cpp []
class Solution {
public:
    vector<int> addNegabinary(vector<int>& arr1, vector<int>& arr2) {
        int i = arr1.size() - 1;
        int j = arr2.size() - 1;
        int carry = 0;
        vector<int> res;
        
        while (i >= 0 || j >= 0 || carry != 0) {
            int x = (i >= 0) ? arr1[i] : 0;
            int y = (j >= 0) ? arr2[j] : 0;
            int sum = x + y + carry;
          
            int remainder = sum % -2;
            if (remainder < 0) {
                remainder += 2;  
                carry = (sum / -2) +1; 
            } else {
                carry = sum / -2;
            }
            
            res.push_back(remainder);
            
            i--;
            j--;
        }
     
        while (res.size() > 1 && res.back() == 0) {
            res.pop_back();
        }
        
        reverse(res.begin(), res.end());
        return res;
    }
};

```
['Array', 'Math', 'C++']