#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
const int N = 25;
int a[N];
bool st[N];
int n,k,idx;
vector<int> sum;
void dfs(int u,int S)
{
if(u == k+1)
{
sum.push_back(S);
return ;
}
for(int i = 1;i <= n;i ++)
{
if(!st[i])
{
S += a[i];
st[i] = true;
dfs(u + 1,S);
S -= a[i];
st[i] = false;
}
}
}
bool prime(int x)
{
if(x == 1) return false;
for(int i = 2;i <= x/i;i ++)
{
if(x % i == 0) return false ;
}
return true;
}
int main()
{
cin >> n >> k;
for(int i = 1;i <= n;i ++) cin >> a[i];//读入
dfs(1,0);
sort(sum.begin(),sum.end());排序以便去重
sum.erase(unique(sum.begin(),sum.end()),sum.end());//去重
long long res = 0;
for(int i = 0;i < sum.size();i ++) {
if(prime(sum[i])) res ++;
}
cout << res;
return 0;
}