#include <iostream>
#include <string>
#include <vector>
using namespace std;
bool check[8];
bool prime[100000000];
vector<int> num;
int bfs(string numbers, string s){
for(int i = 0; i < numbers.length(); ++i){
if(!check[i]){
check[i]=true;
num.push_back(stoi(s+numbers[i]));
bfs(numbers, s+numbers[i]);
check[i]=false;
}
}
}
int solution(string numbers) {
int answer = 0;
prime[0]=prime[1]=true;
for(int i = 2; i < 100000000; ++i){
if(!prime[i]){
for(int j = i+i; j < 100000000; ++j)
prime[j]=true;
}
}
bfs(numbers, "");
for(int i : num){
if(!prime[i])++answer;
}
return answer;
}
int main() {
cout << solution("0712332") << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiAKIApib29sIGNoZWNrWzhdOwpib29sIHByaW1lWzEwMDAwMDAwMF07CnZlY3RvcjxpbnQ+IG51bTsKaW50IGJmcyhzdHJpbmcgbnVtYmVycywgc3RyaW5nIHMpewogICAgZm9yKGludCBpID0gMDsgaSA8IG51bWJlcnMubGVuZ3RoKCk7ICsraSl7CiAgICAgICAgaWYoIWNoZWNrW2ldKXsKICAgICAgICAgICAgY2hlY2tbaV09dHJ1ZTsKICAgICAgICAgICAgbnVtLnB1c2hfYmFjayhzdG9pKHMrbnVtYmVyc1tpXSkpOwogICAgICAgICAgICBiZnMobnVtYmVycywgcytudW1iZXJzW2ldKTsKICAgICAgICAgICAgY2hlY2tbaV09ZmFsc2U7CiAgICAgICAgfQogICAgfQogCn0KaW50IHNvbHV0aW9uKHN0cmluZyBudW1iZXJzKSB7CiAgICBpbnQgYW5zd2VyID0gMDsKICAgIHByaW1lWzBdPXByaW1lWzFdPXRydWU7CiAgICBmb3IoaW50IGkgPSAyOyBpIDwgMTAwMDAwMDAwOyArK2kpewogICAgICAgIGlmKCFwcmltZVtpXSl7CiAgICAgICAgICAgIGZvcihpbnQgaiA9IGkraTsgaiA8IDEwMDAwMDAwMDsgKytqKQogICAgICAgICAgICAgICAgcHJpbWVbal09dHJ1ZTsKICAgICAgICB9CiAgICB9CiAgICBiZnMobnVtYmVycywgIiIpOwogICAgZm9yKGludCBpIDogbnVtKXsKICAgICAgICBpZighcHJpbWVbaV0pKythbnN3ZXI7CiAgICB9CiAgICByZXR1cm4gYW5zd2VyOwp9CiAKaW50IG1haW4oKSB7Cgljb3V0IDw8IHNvbHV0aW9uKCIwNzEyMzMyIikgPDwgZW5kbDsKCXJldHVybiAwOwp9