public class text_2_23 { public static void main(String[] args) { for(int i=1;i<=400;i++){ if(isPrime(i)){ continue; } if(getsum(i)==allprime(i)){ System.out.print(i+" "); } } } public static int getsum(int x){ int sum=0; if(x/10==0){ sum=x; } else if (x>=10&&x<=99){ sum=x/10+x%10; } else if (x>=100&&x<=400){ sum=x/100+x%100/10+x%10; } return sum; } public static int allprime(int x){ int[] arr=new int[20]; int j=0; int sum=0; int special; for(int i=2;i<=x;i++){ if(x%i==0){ sum+=i; x/=i; arr[j]=i; j++; while(x%i==0){ sum+=i; x/=i; arr[j]=i; j++; } } } sum=0; for(int i=0;i<20;i++){ if(arr[i]<10){ sum+=arr[i]; } else if(arr[i]>9&&arr[i]<100){ special=arr[i]/10+arr[i]%10; sum+=special; } else if(arr[i]>99&&arr[i]<1000){ special=arr[i]/100+arr[i]%100/10+arr[i]%10; sum+=special; } } return sum; } public static boolean isPrime(int x){ for(int i=2;i<x;i++){ if(x%i==0){ return false; } } return true; } }