Problem5598--选取(choose)

5598: 选取(choose)

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

给定 $n$ 个整数 $a_i$,你需要求出有多少个从中选出 $k$ 个的方案,使得这 $k$ 个整数的和是质数。
两种方案被视为不同,当且仅当存在一个 $i$ 满足 $a_i$ 只在其中一种方案中被选出。

Input

第一行两个整数 $n$ 和 $k$。
第二行 $n$ 个整数 $a_i$。

Output

一行一个整数,表示从 $n$ 个整数中选出 $k$ 个数的和是质数的方案数。

Constraints

对于 $30\%$ 的数据,$k=1$;
对于另 $40\%$ 的数据,$n \leq 5$;
对于所有数据,$1 \leq n \leq 20,\ k<n,\ 1 \leq a_i \leq 5,000,000$。

Sample 1 Input

4 3
3 7 12 19

Sample 1 Output

1
$3+7+19=29$

Sample 2 Input

4 1
3 7 12 19

Sample 2 Output

3

Sample 3 Input

4 2
3 7 12 19

Sample 3 Output

2
$7+12=19,\ 12+19=31$

HINT

题目来源:2021年绍兴市中小学生编程比赛复赛

Source/Category