fork(1) download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main(String[] args) {
  11. long beg = System.nanoTime();
  12. solve(419, 792);
  13. System.out.println("Time needed to calculate: "+(System.nanoTime()-beg)/1000000.0 + "ms");
  14. }
  15.  
  16. public static void solve(int a, int b) {
  17. int[] aDigits = new int[3];
  18. int[] bDigits = new int[3];
  19. for (int i = 0; i < 3; i++) {
  20. aDigits[2 - i] = (a / (int) Math.pow(10, i)) % 10;
  21. bDigits[2 - i] = (b / (int) Math.pow(10, i)) % 10;
  22. }
  23. for (int x = 10; x <= 15000; x++) {
  24. int numBaseX = digitsToBase10(aDigits, x);
  25. int y = 10;
  26. while (y <= 15000) {
  27. int numBaseY = digitsToBase10(bDigits, y);
  28. if (numBaseX == numBaseY) {
  29. System.out.println("Base X: " + x + " Base Y: " + y);
  30. return;
  31. } else if (numBaseY > numBaseX) {
  32. break;
  33. } else {
  34. y++;
  35. }
  36. }
  37. }
  38. System.out.println("Nothing found");
  39. }
  40.  
  41. public static int digitsToBase10(int[] digits, int b) {
  42. int res = 0;
  43. for (int i = 0; i < digits.length; i++) {
  44. res += digits[i] * (int) Math.pow(b, digits.length - 1 - i);
  45. }
  46. return res;
  47. }
  48. }
Success #stdin #stdout 0.07s 380160KB
stdin
Standard input is empty
stdout
Base X: 47 Base Y: 35
Time needed to calculate: 1.739916ms