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。

相关推荐
Tisfy2 天前
LeetCode 3637.三段式数组 I:一次遍历(三种实现)
算法·leetcode·题解·模拟·数组·遍历·moines
老鼠只爱大米6 天前
LeetCode经典算法面试题 #98:验证二叉搜索树(递归法、迭代法等五种实现方案详解)
算法·leetcode·二叉树·递归·二叉搜索树·迭代
醉殇姒若梦遗年7 天前
Cascader 级联选择器---遍历获取id的路径
遍历·cascader·级联选择器·获取id路径
2401_841495648 天前
【LeetCode刷题】二叉树的中序遍历
数据结构·python·算法·leetcode··递归·遍历
大熊猫侯佩10 天前
星际穿越:SwiftUI 如何让 ForEach 遍历异构数据(Heterogeneous)集合
swiftui·swift·遍历·foreach·any·异构集合·heterogeneous
老鼠只爱大米14 天前
LeetCode经典算法面试题 #24:两两交换链表中的节点(迭代法、递归法等多种实现方案详细解析)
算法·leetcode·链表·递归·双指针·迭代·链表交换
2401_8414956415 天前
【LeetCode刷题】删除链表的倒数第N个结点
数据结构·python·算法·leetcode·链表·遍历·双指针
SunkingYang23 天前
QT中如何遍历QStringList
qt·解析·遍历·方式·读取·qstringlist
SunkingYang23 天前
QT中如何遍历QStringList中的一部分存储到另外一个QStringList
qt·遍历·子集·qstringlist·另一个
Espresso Macchiato1 个月前
Leetcode 3782. Last Remaining Integer After Alternating Deletion Operations
迭代·leetcode hard·leetcode双周赛172·leetcode 3782