357. Count Numbers with Unique Digits

问题描述

解决方案

//按照组合的方法,求解

class Solution {
public:
    int countNumbersWithUniqueDigits(int n) {
        if(n==0) return 1;
        int count=10;
        for(int i=2;i<=n;++i)
        {
             count+=countNumberUnique(i);
        }
        return count;
    } 
    int countNumberUnique(int n)
    {
        int k=9,number=9;
        while(--n)
        {
            number*=k--;
        }
        return number;
    }
    
};
posted @ 2016-08-26 14:46  弦断  阅读(232)  评论(0编辑  收藏  举报