fork download
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4. using namespace std;
  5.  
  6.  
  7.  
  8. bool check[8];
  9. bool prime[100000000];
  10. vector<int> num;
  11. int bfs(string numbers, string s){
  12. for(int i = 0; i < numbers.length(); ++i){
  13. if(!check[i]){
  14. check[i]=true;
  15. num.push_back(stoi(s+numbers[i]));
  16. bfs(numbers, s+numbers[i]);
  17. check[i]=false;
  18. }
  19. }
  20.  
  21. }
  22. int solution(string numbers) {
  23. int answer = 0;
  24. prime[0]=prime[1]=true;
  25. for(int i = 2; i < 100000000; ++i){
  26. if(!prime[i]){
  27. for(int j = i+i; j < 100000000; ++j)
  28. prime[j]=true;
  29. }
  30. }
  31. bfs(numbers, "");
  32. for(int i : num){
  33. if(!prime[i])++answer;
  34. }
  35. return answer;
  36. }
  37.  
  38. int main() {
  39. cout << solution("9999999") << endl;
  40. return 0;
  41. }
Success #stdin #stdout 0.19s 112896KB
stdin
Standard input is empty
stdout
0