#include<iostream>
#include<set>
using namespace std;
set<int> st;
int a[25];
int n, k;
bool check(int d){
if (d < 2) return false;
else{
for(int i = 2; i <= d / i; i++){
if(d % i == 0) return false;
}
}
return true;
}
void dfs(int deep, int tmp, int cnt){
if ((n - cnt + 1) < (k - deep + 1)) return;
if (deep > k){
if (check(tmp)) st.insert(tmp);
return;
}
else{
for(int i = cnt; i <= n; i++){
tmp += a[i];
dfs(deep + 1, tmp, i + 1);
tmp -= a[i];
}
}
}
int main(){
cin >> n >> k;
for(int i = 1; i <= n; i++) cin >> a[i];
dfs(1, 0, 1);
cout << st.size();
return 0;
}