题解
暴力即可,但是每次计算注意取余,否则会爆
先写出二进制的公式,然后进行化简,其实就是每右移一位,这个数就是最后一个数即+本身,前一个数*2 以此类推即可得出。
最后注意c++的vector用法
1.vector.size(),获取vector中数组长度
2.vector.push_back(),加入到数组之中。
代码如下
class Solution {
public:
vector<bool> prefixesDivBy5(vector<int>& A) {
vector<bool>res;
int sum = 0;
for(int i = 0; i < A.size(); i++){
sum = (sum*2 + A[i])%5;
res.push_back(sum == 0);
}
return res;
}
};