Python 3   ||   8 lines,  one-pass   ||   T/S: 99% / 100%
\nmx = 1048575  #  <-- which is 11111111111111111111 base 2\n\nclass Solution:\n    def maxSubarrays(self, nums: List[int]) -> int:\n\n        ans, acc = 0, mx\
```\nmx = 1048575  #  <-- which is 11111111111111111111 base 2\n\nclass Solution:\n    def maxSubarrays(self, nums: List[int]) -> int:\n\n        ans, acc = 0, mx\n\n        for num in nums:\n            acc&= num\n    \n            if acc == 0 :\n                ans+= 1 \n                acc = mx\n\n        return 1 if ans == 0 else ans \n\n```\n[https://leetcode.com/problems/split-array-into-maximum-number-of-subarrays/submissions/1063411734/](https://leetcode.com/problems/split-array-into-maximum-number-of-subarrays/submissions/1063411734/)\n\nI could be wrong, but I think that time complexity is *O*(*N*) and space complexity is *O*(1), in which *N* ~ `len(nums)`.
['Python3']