列表

详情


2638. 统计 K-Free 子集的总数

给定一个包含 无重复 元素的整数数组 nums 和一个整数 k

如果一个子集中 存在两个差的绝对值等于 k 的元素,则称其为 k-Free 子集。注意,空集是一个 k-Free 子集。

返回 numsk-Free 子集的数量。

一个数组的 子集 是该数组中的元素的选择(可能为零个)。

 

示例 1 :

输入:nums = [5,4,6], k = 1
输出:5
解释:有 5 个合法子集:{}, {5}, {4}, {6} 和 {4, 6} 。

示例 2 :

输入:nums = [2,3,5,8], k = 5
输出:12
解释:有12个合法子集:{}, {2}, {3}, {5}, {8}, {2, 3}, {2, 3, 5}, {2, 5}, {2, 5, 8}, {2, 8}, {3, 5} 和 {5, 8} 。

示例 3 :

输入:nums = [10,5,9,11], k = 20
输出:16
解释:所有的子集都是有效的。由于子集的总数为 24 = 16,因此答案为 16 。

 

提示:

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: long long countTheNumOfKFreeSubsets(vector<int>& nums, int k) { } };

上一题