2138: 子集(subset)(小学组20231118信息奥数比赛)

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:9 解决:5

题目描述

小 C 终于找到了自己的位置。他准备大展身手。 小 C 看到题目:给定一个包含 n 个整数的数组 nums 和一个正整数 k,找出是否有可能 把这个数组分成 k 个非空子集,其总和都相等。 小 C 知道子集是指:从一个集合中取出任意多个值构成的集合为该集合的子集。非 空表示集合中至少含有一个元素。 小 C 发现这个题目他不会,他很着急。希望你能帮帮他。

输入

使用subset.in读取,

输入包括共 2 行; 第 1 行:整数数组元素个数 n 和非空子集个数 K; 第 2 行:n 个整数

输出

使用subset.out输出,

若能划分为 k 个相等的子集则输出 Yes 否则输出 No

样例输入 复制

7 4
4 3 2 3 5 2 1

样例输出 复制

Yes

提示

使用freopen输出,

说明: 有可能将其分成 4 个非空子集(5),(1,4),(2,3),(2,3)等于总和。 数据范围: 0<n<15, 0<K<10, 0<nums[i]<1000

来源/分类