当前位置:网站首页>LeetCode 216. Combined Sum III (2022.08.04)
LeetCode 216. Combined Sum III (2022.08.04)
2022-08-05 10:01:00 【ChaoYue_miku】
找出所有相加之和为 n 的 k 个数的组合,且满足下列条件:
只使用数字1到9
每个数字 最多使用一次
返回 所有可能的有效组合的列表 .该列表不能包含相同的组合两次,组合可以以任何顺序返回.
示例 1:
输入: k = 3, n = 7
输出: [[1,2,4]]
解释:
1 + 2 + 4 = 7
没有其他符合的组合了.
示例 2:
输入: k = 3, n = 9
输出: [[1,2,6], [1,3,5], [2,3,4]]
解释:
1 + 2 + 6 = 9
1 + 3 + 5 = 9
2 + 3 + 4 = 9
没有其他符合的组合了.
示例 3:
输入: k = 4, n = 1
输出: []
解释: 不存在有效的组合.
在[1,9]范围内使用4个不同的数字,我们可以得到的最小和是1+2+3+4 = 10,因为10 > 1,没有有效的组合.
提示:
2 <= k <= 9
1 <= n <= 60
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/combination-sum-iii
方法一:二进制枚举
C++提交内容:
class Solution {
public:
vector<int> temp;
vector<vector<int>> ans;
bool check(int mask, int k, int n) {
temp.clear();
for (int i = 0; i < 9; ++i) {
if ((1 << i) & mask) {
temp.push_back(i + 1);
}
}
return temp.size() == k && accumulate(temp.begin(), temp.end(), 0) == n;
}
vector<vector<int>> combinationSum3(int k, int n) {
for (int mask = 0; mask < (1 << 9); ++mask) {
if (check(mask, k, n)) {
ans.emplace_back(temp);
}
}
return ans;
}
};
边栏推荐
猜你喜欢
随机推荐
First Decentralized Heist?Loss of nearly 200 million US dollars: analysis of the attack on the cross-chain bridge Nomad
数据中台建设(十):数据安全管理
技术干货 | 基于 MindSpore 实现图像分割之豪斯多夫距离
Custom filters and interceptors implement ThreadLocal thread closure
PAT Level B - B1021 Single Digit Statistics (15)
Redis源码解析:Redis Cluster
皕杰报表的下拉框联动
How ali cloud storage database automatically to speed up the loading speed of www.cxsdkt.cn how to set up the case?
CPU的亲缘性affinity
自定义过滤器和拦截器实现ThreadLocal线程封闭
Bias lock/light lock/heavy lock lock is healthier. How is locking and unlocking accomplished?
21 Days of Deep Learning - Convolutional Neural Networks (CNN): Weather Recognition (Day 5)
电竞、便捷、高效、安全,盘点OriginOS功能的关键词
2.4G无线收发模块的应用
Oracle temporary table space role
js graphics operation one (compatible with pc, mobile terminal to achieve draggable attribute drag and drop effect)
什么是CRM决策分析管理?
入门 Polkadot 平行链开发,看这一篇就够了
无题九
【MindSpore易点通机器人-01】你也许见过很多知识问答机器人,但这个有点不一样









