一、题目1
有数组[1,0,1,0,1,1,0]转二进制
int bin = 0; // 二进制的数字
int dig = 1;
for (int i = cells.size() - 1; i >= 0; i--) { //将cells转换成二进制数bin
bin += cells[i] * dig;
dig *= 2;
}
return bin;
二、题目2
将二进制转为数组
//将最终状态转换回数组
vector<int> res = vector<int>(cells.size(), 0);
int i = cells.size() - 1;
while (bin > 0) {
res[i--] = bin % 2;
bin /= 2;
}
return res;