class Solution {
public:
bool check(vector<int>&v){
if(v[0]==0)
return false;
int n=0;
for(int i=0;i<v.size();i++)
n=n*10+v[i];
return (n&(n-1))==0;
}
bool dfs(vector<int>&v,int step){
if(step==v.size())
return check(v);
for(int i=step;i<v.size();i++){
swap(v[step],v[i]);
if(dfs(v,step+1))
return true;
swap(v[step],v[i]);
}
return false;
}
bool reorderedPowerOf2(int n) {
vector<int>v;
while(n!=0){
v.push_back(n%10);
n/=10;
}
return dfs(v,0);
}
};
重新排序得到 2 的幂(暴力搜索)
最新推荐文章于 2024-08-12 19:18:27 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)