<p>You are given an integer <code>n</code>. We reorder the digits in any order (including the original order) such that the leading digit is not zero.</p>

<p>Return <code>true</code> <em>if and only if we can do this so that the resulting number is a power of two</em>.</p>

<p>&nbsp;</p>
<p><strong class="example">Example 1:</strong></p>

<pre>
<strong>Input:</strong> n = 1
<strong>Output:</strong> true
</pre>

<p><strong class="example">Example 2:</strong></p>

<pre>
<strong>Input:</strong> n = 10
<strong>Output:</strong> false
</pre>

<p>&nbsp;</p>
<p><strong>Constraints:</strong></p>

<ul>
	<li><code>1 &lt;= n &lt;= 10<sup>9</sup></code></li>
</ul>

class Solution {
public:
    vector<int> make_vector(int n){

        int p=1<<n;
        vector<int> ans;
        while(p>0){
            ans.push_back(p%10);
            p=p/10;
        }
        sort(ans.begin(), ans.end());
        return ans;
    }
    bool reorderedPowerOf2(int n) {
        
        set<vector<int>> s;
        for(int i=0; i<31; i++){

            s.insert(make_vector(i));
        }
        vector<int> check;
        while(n>0){
            check.push_back(n%10);
            n=n/10;
        }

        sort(check.begin(), check.end());

        if(s.find(check)!=s.end()) return 1;

        return 0;

    }
};
9400