问题:
给定一个二进制数组 nums ( 索引从0开始 )。
我们将xi 定义为其二进制表示形式为子数组 nums[0..i] (从最高有效位到最低有效位)。
- 例如,如果
nums =[1,0,1],那么x0 = 1,x1 = 2, 和x2 = 5。
返回布尔值列表 answer,只有当 xi 可以被 5 整除时,答案 answer[i] 为 true,否则为 false。
示例 1:
输入:nums = [0,1,1] 输出:[true,false,false] 解释: 输入数字为 0, 01, 011;也就是十进制中的 0, 1, 3 。只有第一个数可以被 5 整除,因此 answer[0] 为 true 。
示例 2:
输入:nums = [1,1,1] 输出:[false,false,false]
思路:1.每一步都将当前的前缀转换为一个十进制的数,然后让这个数除5看余数是否为0 (0 返回true 否则返回false)
2.但是数组一旦非常长,当数据超出Number所能表示的精确范围,会导致溢出问题

被折叠的 条评论
为什么被折叠?



