869. 重新排序得到 2 的幂
869. 重新排序得到 2 的幂
题目链接:869. 重新排序得到 2 的幂
代码如下:
class Solution {
public:bool reorderedPowerOf2(int n) {init(); // 初始化集合return pow_two_sorted_set.contains(int_to_sorted_str_set(n));}private:string int_to_sorted_str_set(int n) {string s = to_string(n);sort(s.begin(), s.end()); // 对字符串进行排序return s; // 返回排序后的字符串}void init() {const int MAX_N = 1'000'000'000;for (int i = 1;i < MAX_N;i <<= 1) {string s = int_to_sorted_str_set(i);pow_two_sorted_set.insert(s); // 将排序后的字符串存入集合}}unordered_set<string> pow_two_sorted_set;
};