fork download
  1. #include<iostream>
  2. #include<fstream>
  3. #include<vector>
  4. #include<algorithm>
  5. using namespace std;
  6. ifstream fin("prime.inp");
  7. ofstream fout("prime.out");
  8. int get(int n,vector<int>& x,int len){
  9. vector<int> bit(len);
  10. int num=0;
  11. int c=1;
  12. for(int i=0;i<len;i++){
  13. if(n%2==0){
  14. bit[i]=0;
  15. }
  16. else{
  17. bit[i]=1;
  18. }
  19. n=n/2;
  20. if(bit[i]==1){
  21. num=num+x[i]*c;
  22. c=c*10;
  23. }
  24. }
  25. return num;
  26. }
  27. int check(int num){
  28. if(num<2){
  29. return 0;
  30. }
  31. for(int i=2;i*i<=num;i++){
  32. if(num%i==0){
  33. return 0;
  34. }
  35. }
  36. return 1;
  37. }
  38. int main(){
  39. int n;
  40. fin>>n;
  41. int a=1;
  42. int len=0;
  43. vector<int> x;
  44. while(n>0){
  45. len++;
  46. a=a*2;
  47. x.push_back(n%10);
  48. n=n/10;
  49. }
  50. int Max=-1;
  51. for(int i=1;i<a;i++){
  52. int num=get(i,x,len);
  53. if(check(num)==1&&num>Max){
  54. Max=num;
  55. }
  56. }
  57. fout<<Max;
  58. }
  59.  
Success #stdin #stdout 0s 5312KB
stdin
123
stdout
Standard output is empty