Leetcode 3483. Unique 3-Digit Even Numbers

  • [Leetcode 3483. Unique 3-Digit Even Numbers](#Leetcode 3483. Unique 3-Digit Even Numbers)
    • [1. 解题思路](#1. 解题思路)
    • [2. 代码实现](#2. 代码实现)

1. 解题思路

这一题其实是一个easy的题目,因为限制条件有限,最暴力的方法就是直接遍历一下100到999的全部数字,看看那些数字可以被构成即可。

我们这里稍微做的复杂了一点,用了迭代的思路,分别考察每一位上的可取数字,看起来更好看了一些而已......

2. 代码实现

给出python代码实现如下:

python 复制代码
class Solution:
    def totalNumbers(self, digits: List[int]) -> int:
        cnt = Counter(digits)
        
        def dp(idx):
            if idx == 2:
                return len([i for i in range(0, 10, 2) if cnt[i] != 0])
            ans = 0
            st = 0 if idx == 1 else 1
            for i in range(st, 10):
                if cnt[i] > 0:
                    cnt[i] -= 1
                    ans += dp(idx+1)
                    cnt[i] += 1
            return ans
        
        return dp(0)

提交代码评测得到:耗时19ms,占用内存18.2MB。

相关推荐
Tisfy14 天前
LeetCode 2515.到目标字符串的最短距离:从中间往两边遍历
算法·leetcode·字符串·题解·数组·遍历
Tisfy17 天前
LeetCode 1848.到目标元素的最小距离:数组遍历(附python一行版)
python·leetcode·题解·遍历
Tisfy18 天前
LeetCode 3740.三个相等元素之间的最小距离 I:今日先暴力,“明日“再哈希
算法·leetcode·哈希算法·题解·模拟·遍历·暴力
Tisfy3 个月前
LeetCode 3637.三段式数组 I:一次遍历(三种实现)
算法·leetcode·题解·模拟·数组·遍历·moines
老鼠只爱大米3 个月前
LeetCode经典算法面试题 #98:验证二叉搜索树(递归法、迭代法等五种实现方案详解)
算法·leetcode·二叉树·递归·二叉搜索树·迭代
醉殇姒若梦遗年3 个月前
Cascader 级联选择器---遍历获取id的路径
遍历·cascader·级联选择器·获取id路径
2401_841495643 个月前
【LeetCode刷题】二叉树的中序遍历
数据结构·python·算法·leetcode··递归·遍历
大熊猫侯佩3 个月前
星际穿越:SwiftUI 如何让 ForEach 遍历异构数据(Heterogeneous)集合
swiftui·swift·遍历·foreach·any·异构集合·heterogeneous
老鼠只爱大米3 个月前
LeetCode经典算法面试题 #24:两两交换链表中的节点(迭代法、递归法等多种实现方案详细解析)
算法·leetcode·链表·递归·双指针·迭代·链表交换
2401_841495643 个月前
【LeetCode刷题】删除链表的倒数第N个结点
数据结构·python·算法·leetcode·链表·遍历·双指针