fork download
  1. class M{
  2. static boolean c(int n){
  3. return n < 2 | p(n)
  4. ? 0 > 1 //false
  5. : d(n) == f(n);
  6. }
  7.  
  8. // Sums digits of int
  9. static int d(int n) {
  10. return n > 9
  11. ? n%10 + d(n/10)
  12. : n;
  13. }
  14.  
  15. // Convert int to sum of prime-factors
  16. static int f(int n) {
  17. int r = 0,
  18. i;
  19. for(i = 1; ++i <= n; ){
  20. for( ; n % i < 1; n /= i,
  21. r += i > 9 ? d(i) : i);
  22. }
  23. return r;
  24. }
  25.  
  26. // Checks if the int is a prime
  27. static boolean p(int n){
  28. int i = 2;
  29. while(i < n){
  30. n = n % i++ < 1
  31. ? 0
  32. : n;
  33. }
  34. return n > 1;
  35. }
  36.  
  37. public static void main(String[] a){
  38. System.out.println(c(18));
  39. System.out.println(c(22));
  40. System.out.println(c(13));
  41. System.out.println(c(666));
  42. System.out.println(c(-256));
  43. System.out.println(c(0));
  44. System.out.println(c(1));
  45. System.out.println(c(4937775));
  46. }
  47. }
Success #stdin #stdout 0.04s 711168KB
stdin
Standard input is empty
stdout
false
true
false
true
false
false
false
true