Easy C++ solution O(n) time and O(1) space
Intuition\nIf total and of array is not zero then ans will be 1 as we can\'t divide such that sum of individual subarray will be minimum. If total and of array 
# Intuition\nIf total and of array is not zero then ans will be 1 as we can\'t divide such that sum of individual subarray will be minimum. If total and of array is zero then we can use a loop to find all subarray such that their and is zero\n\n\n\n# Complexity\n- Time complexity:O(n)\n<!-- Add your time complexity here, e.g. $$O(n)$$ -->\n\n- Space complexity:O(1)\n<!-- Add your space complexity here, e.g. $$O(n)$$ -->\n\n# Code\n```\nclass Solution {\npublic:\n    int maxSubarrays(vector<int>& nums) {\n        \n        int a=nums[0];\n        for(auto it:nums) a&=it;\n        \n        int ans=0;\n        int curr=(1<<24)-1;\n        \n        if(a!=0) return 1;\n        \n        \n        for(int i=0;i<nums.size();i++){\n            curr&=nums[i];\n            cout<<curr<<" ";\n            if(curr==a) {\n                ans++;\n                curr=(1<<24)-1;\n            }\n        }\n        \n        return ans;\n    }\n};\n```
['C++']