<p>Given an integer <code>n</code>, return the count of all numbers with unique digits, <code>x</code>, where <code>0 &lt;= x &lt; 10<sup>n</sup></code>.</p>

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

<pre>
<strong>Input:</strong> n = 2
<strong>Output:</strong> 91
<strong>Explanation:</strong> The answer should be the total numbers in the range of 0 &le; x &lt; 100, excluding 11,22,33,44,55,66,77,88,99
</pre>

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

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

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

<ul>
	<li><code>0 &lt;= n &lt;= 8</code></li>
</ul>

class Solution {
public:

    int countNumbersWithUniqueDigits(int n) {
        int k=pow(10,n);
        int cnt=0;
        int l=n+1;
        while(l--){
            int k=9;
            int prod=1;
            for(int i=0;i<l;i++){
                if(i==0 || i==1){
                    prod=prod*9;
                }
                else{
                    k=k-1;
                    prod=prod*k;
                }
            }
            cnt+=prod;
        }
        return cnt;
        
    }
};
7600