#include <iostream>
#include<vector>
#include<algorithm>
#include<map>
#include<cmath>
using namespace std;
int s[25];
int n = 0, ans = 0;
bool check(int a)
{
for (int i = 2; i * i <= a; i++)
{
if (a % i == 0)
return false;
}
return true;
}
void fsd(int num ,int stemp,int sum) {
if (num == 0) {
if (check(sum)) ans++;
return;
}
if (stemp >= n)
return;
for (int i = stemp; i < n; i++)
fsd(num - 1, stemp + 1, sum + s[i]);
}
int main() {
int m;
cin >> n >> m;
for (int i = 0; i < n; i++)
{
int tmp = 0;
cin >> tmp;
s[i] = tmp;
}
fsd(m, 0, 0);
cout << ans << '\n';
return 0;
}