Count Numbers with Unique Digits
来源:互联网 发布:公安部防网络诈骗中心 编辑:程序博客网 时间:2024/05/22 06:24
题目地址:https://leetcode.com/problems/count-numbers-with-unique-digits/description/
Given a non-negative integer n, count all numbers with unique digits, x, where 0 ≤ x < 10^n.
Example:
Given n = 2, return 91. (The answer should be the total numbers in the range of 0 ≤ x < 100, excluding [11,22,33,44,55,66,77,88,99])
这种题目可以用组合的思想:
可以这么想,假如
- 如果最高位是
0 ,那么低n−1 位各位数字不同的数字的个数正好是f(n−1) 。 - 如果最高位不为
0 ,那么最高位有C19 种可能性,因为只能从1到9中选择,第二位有C19 种可能性,这是因为第二位在选完第一位剩下的数字的基础上又添加了0 ,很显然第三位有C18 种可能性,那么当n≥2 第n位有C111−n 种可能性。
所以:
编码如下:
public class CountNumbersWithUniqueDigits { public static int countNumbersWithUniqueDigits(int n) { if (n == 0) return 1; if (n == 1) return 10; return countNumbersWithUniqueDigits(n - 1) + CNT(n); } public static int CNT(int n) { int res = 9; for (int i = 1; i < n ; i++) { res *= (10 - i); } return res; } public static void main(String[] args) { for (int i = 1; i <= 15; i++) { System.out.println(i + "*********" + countNumbersWithUniqueDigits(i)); } }}
阅读全文
0 0
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- Count Numbers with Unique Digits
- 【LeetCode】357. Count Numbers with Unique Digits
- 357. Count Numbers with Unique Digits
- leetcode Count Numbers with Unique Digits
- LeetCode 357. Count Numbers with Unique Digits
- LeetCode:Count Numbers with Unique Digits
- [leetcode] 357. Count Numbers with Unique Digits
- HashSet 和 TreeSet 的区别
- Git带你回到过去和未来【2】
- Firfox:bootstrap小图标无法显示
- Linux下C语言开发
- 菱形虚拟继承对象模型分析
- Count Numbers with Unique Digits
- ionic 打开外部页面的三种方式(已知)
- mac下打出特殊符号
- 深入理解js的变量提升和函数提升
- python刷题和学习笔记
- LeetCode 283. Move Zeroes
- 链表算法示例
- zabbix监控系统强化及代理
- struts2+spring3+hibernate3组合的SSH框架搭建