fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. bool snt(long long n)
  4. {
  5. if (n < 2)
  6. return false;
  7. for (long long i = 2; i * i <= n; i++)
  8. {
  9. if (n % i == 0)
  10. return false;
  11. }
  12. return true;
  13. }
  14. bool ok(long long n)
  15. {
  16. if (snt(n) == false)
  17. return false;
  18. long long t = n;
  19. vector<long long> a = {};
  20. while (t > 0)
  21. {
  22. a.push_back(t % 10);
  23. t /= 10;
  24. }
  25. long long pt = 0;
  26. do{
  27. pt = 0;
  28. for (long long i:a)
  29. pt = pt * 10 + i;
  30. if (snt(pt))
  31. return true;
  32. }while(next_permutation(a.begin(), a.end()));
  33. return false;
  34. }
  35. int main()
  36. {
  37. ios_base::sync_with_stdio(0);
  38. cin.tie(0);
  39. cout.tie(0);
  40. long long n;
  41. cin >> n;
  42. vector<long long> FIB = {};
  43. long long fib1 = 5;
  44. long long fib2 = 8;
  45. long long pt = 13;
  46. while (pt <= n)
  47. {
  48. if (ok(pt))
  49. FIB.push_back(pt);
  50. fib1 = fib2;
  51. fib2 = pt;
  52. pt = fib1 + fib2;
  53. }
  54. for (long long i:FIB)
  55. cout << i << '\n';
  56. }
Success #stdin #stdout 0.01s 5316KB
stdin
Standard input is empty
stdout
13
1597
28657
514229
433494437
2971215073