华为OD机试 Python 【符合要求的元组的个数】

题目

你有一个整数列表和一个目标数字。你的任务是找出这个列表里有多少种方式(组合),使得其中的k个数字加起来等于那个目标数字。

列表中的数字个数介于2到200之间。
列表中的每个数字和目标数字都在-109到109之间。
k的值介于2到100之间。
举个例子:
给你数字列表: -1 0 1 2 -1 -4,k为3,目标数字为0。
你可以找到两种方式:[-1,0,1] 和 [-1,-1,2],所以答案是2。

代码

def count_valid_combinations(nums, k, target):
    # 如果nums长度小于k,显然不可能找到k个数满足条件
    if len(nums) <

你可能感兴趣的:(华为od,python,算法)