题目
题解
将n转换为三进制,如果 n 的 3 进制表示中每一位均不为 2,那么答案为True,否则为False。
例如当 n=12 时,12=(110),满足要求;当 n=21 时,21=(210) ,不满足要求。
class Solution {
public boolean checkPowersOfThree(int n) {
while(n>0){
if(n%3==2)
return false;
n/=3;
}
return true;
}
}
时间复杂度: O ( l o g n ) O(logn) O(logn)
空间复杂度: O ( 1 ) O(1) O(1)
p.s 终于把开题解决了,下个阶段全力冲刺暑期实习!!