前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >LeetCode 2094. 找出 3 位偶数

LeetCode 2094. 找出 3 位偶数

作者头像
Michael阿明
发布2022-01-07 10:52:32
发布2022-01-07 10:52:32
27500
代码可运行
举报
运行总次数:0
代码可运行

文章目录

1. 题目

给你一个整数数组 digits ,其中每个元素是一个数字(0 - 9)。数组中可能存在重复元素。

你需要找出 所有 满足下述条件且 互不相同 的整数:

  • 该整数由 digits 中的三个元素按 任意 顺序 依次连接 组成。
  • 该整数不含 前导零
  • 该整数是一个 偶数

例如,给定的 digits 是 [1, 2, 3] ,整数 132 和 312 满足上面列出的全部条件。

将找出的所有互不相同的整数按 递增顺序 排列,并以数组形式返回。

代码语言:javascript
代码运行次数:0
运行
复制
示例 1:
输入:digits = [2,1,3,0]
输出:[102,120,130,132,210,230,302,310,312,320]
解释:
所有满足题目条件的整数都在输出数组中列出。 
注意,答案数组中不含有 奇数 或带 前导零 的整数。

示例 2:
输入:digits = [2,2,8,8,2]
输出:[222,228,282,288,822,828,882]
解释:
同样的数字(0 - 9)在构造整数时可以重复多次,
重复次数最多与其在 digits 中出现的次数一样。 
在这个例子中,数字 8 在构造 288、828 和 882 时都重复了两次。 

示例 3:
输入:digits = [3,7,5]
输出:[]
解释:
使用给定的 digits 无法构造偶数。

示例 4:
输入:digits = [0,2,0,0]
输出:[200]
解释:
唯一一个不含 前导零 且满足全部条件的整数是 200 。

示例 5:
输入:digits = [0,0,0]
输出:[]
解释:
构造的所有整数都会有 前导零 。因此,不存在满足题目条件的整数。
 
提示:
3 <= digits.length <= 100
0 <= digits[i] <= 9

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/finding-3-digit-even-numbers 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 对每个数字计数
  • 暴力枚举每个位置的数字,更新数字剩余的个数
代码语言:javascript
代码运行次数:0
运行
复制
class Solution {
public:
    vector<int> findEvenNumbers(vector<int>& digits) {
        vector<int> ct(10);
        for(auto d : digits)
        {
            if(ct[d] < 3) ct[d]++;
        }
        vector<int> ans;
        for(int i = 1; i <= 9; ++i)
        {
            if(ct[i] == 0) continue;
            ct[i]--;
            for(int j = 0; j <= 9; ++j)
            {
                if(ct[j] == 0) continue;
                ct[j]--;
                for(int k = 0; k <= 9; ++k)
                {
                    if(ct[k] && (k&1)==0)
                        ans.push_back(i*100+j*10+k);
                }
                ct[j]++;
            }
            ct[i]++;
        }
        return ans;
    }
};

0 ms 8.8 MB C++


我的CSDN博客地址 https://michael.blog.csdn.net/

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/12/05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 1. 题目
  • 2. 解题
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档