leetcode357. 计算各个位数不同的数字个数(回溯)
给定一个非负整数 n,计算各位数字都不同的数字 x 的个数,其中 0 ≤ x < 10n 。示例:输入: 2
输出: 91
解释: 答案应为除去 11,22,33,44,55,66,77,88,99 外,在 [0,100) 区间内的所有数字。
代码
class Solution {int numbers=0;public int countNumbersWithUniqueDigits(int n) {if(n==0) return 1;countNumbers(n,0,0,new boolean[10]);return numbers;}public void countNumbers(int n,int sum,int level,boolean[] check) {if(level!=0) {numbers++;}if(level==n)//边界{return;}for(int i=0;i<10;i++)//选择{if(check[i]||check[0]&&level>0) continue;//已经选过了check[i]=true;countNumbers(n,sum*10+i,level+1,check);check[i]=false;//回溯}}
}
leetcode357. 计算各个位数不同的数字个数(回溯)相关推荐
- leetcode算法题--计算各个位数不同的数字个数
原题链接:https://leetcode-cn.com/problems/count-numbers-with-unique-digits/ 动态规划: dp[0] = 1 dp[1] = 9(原因 ...
- LeetCode 357. 计算各个位数不同的数字个数(DP)
1. 题目 给定一个非负整数 n,计算各位数字都不同的数字 x 的个数,其中 0 ≤ x < 10n. 示例: 输入: 2 输出: 91 解释: 答案应为除去 11,22,33,44,55,66 ...
- LeetCode 357. 计算各个位数不同的数字个数(动态规划)
题目描述 给定一个非负整数 n,计算各位数字都不同的数字 x 的个数,其中 0 ≤ x < 10n . 示例: 输入: 2 输出: 91 解释: 答案应为除去 11,22,33,44,55,66 ...
- leetcode 357. Count Numbers with Unique Digits | 357. 计算各个位数不同的数字个数(Java)
题目 https://leetcode.com/problems/count-numbers-with-unique-digits/ 题解 只要认真分析数字特点,这题不难,就是个带一些条件的排列组合. ...
- [LeetCode] Count Numbers with Unique Digits 计算各位不相同的数字个数
Given a non-negative integer n, count all numbers with unique digits, x, where 0 ≤ x < 10n. Examp ...
- 在所有的N位数中,有多少个数中有偶数个数字3(说明,0是偶数)?
在所有的N位数中,有多少个数中有偶数个数字3(说明,0是偶数)? [输入格式] 读入一个数N [输出格式] 输出有多少个数中有偶数个数字3. [输入样例] 2 [输出样例] 73(由于 位数 比较大的 ...
- python计算数字个数_python统计字母、空格、数字等字符个数的实例
如下所示: # -*- coding: utf-8 -*- # 要求:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. def count(s): count_a=count_z=c ...
- c语言编程3个数的立方和,用C语言编写:输出所有水仙花数.所谓水仙花数是指一个3位数.其各位数字立方和等于该数本身....
用C语言编写:输出所有水仙花数.所谓水仙花数是指一个3位数.其各位数字立方和等于该数本身. 來源:互聯網 2010-05-07 17:33:03 評論 分類: 電腦/網絡 >> 程序設 ...
- Python 写函数,计算并返回传入字符串中数字个数、字母个数、空格个数以及其他字符的个数。
def count(str1):""":param str1: 传入字符串:return: 数字个数.字母个数.空格个数以及其他字符的个数""&quo ...
最新文章
- 形而上者谓之道,形而下者谓之器
- myeclispe快捷键一\(≧▽≦)/终于也收藏了
- [实战] 用数人云,部署弹性 ELK 集群就五步 1
- Linux中同步MySQL
- pytorch序列化容器
- 注册表删除计算机用户密码,修改注册表删除WIN10开机密码
- 11.抓取JavaScript
- 最全iOS开发之第三方库
- 既往不恋,当下不杂,未来不乱——读《怦然心动的人生整理魔法》
- 时差怎么理解_懂的人自然懂,不懂的人再多解释也有时差
- Java开发从零开始!java游戏服务器开发教程
- 史上最全Java开发手册!!!阿里出版
- 编程计算2×3阶矩阵A和3×2阶矩阵B之积C。矩阵相乘的基本方法是:矩阵A的第i行的所有元素同矩阵B第j列的所有元素对应相乘,并把相乘的结果相加,最终得到的值就是矩阵C的第i行第j列的值。
- 【敏捷】敏捷时代的建模:敏捷团队的扩张除了代码还需要什么? (ZZ)
- LeetCode--704.二分查找(C++)
- AI 算法是如何改变智能风控的 | 文末赠书
- 8 款浏览器兼容性测试工具,看你了解几个?
- Skynet中环境变量的 skynet.getenv 和 skynet.setenv 的实现
- 总是跳转到国内版(cn.bing.com)?New Bing使用全攻略
- 求f(x)=1-x的2次方的定积分
热门文章
- Java面试必备的集合源码详解,砥砺前行!
- 【转】WPF自定义控件与样式(3)-TextBox RichTextBox PasswordBox样式、水印、Label标签、功能扩展...
- 代码整洁之道,clean code
- css样式中如何设置中文字体?
- python word
- BZOJ 1270: [BeijingWc2008]雷涛的小猫( dp )
- HUNAN 11560 Yangyang loves AC(二分+贪心)
- 堆溢出的DWORD Shoot核心原理-口语化
- 会计基础模拟练习一(3)
- 隐藏Content-Location标头带的内部IP地址的执行语句以及其可能会带来的问题