Advertisement
Guest User

Untitled

a guest
Nov 11th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.InputStreamReader;
  3. import java.util.ArrayList;
  4.  
  5. public class Solution {
  6. public static void main(String[] args) throws Exception {
  7. BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  8.  
  9. int oneNumber = 0;
  10. int twoNumber = 0;
  11.  
  12. try {
  13. oneNumber = Integer.parseInt(reader.readLine());
  14. twoNumber = Integer.parseInt(reader.readLine());
  15. } catch (NumberFormatException ex) {
  16. System.out.println(ex);
  17. }
  18.  
  19. ArrayList<Integer> forOneNumber = divider(oneNumber);
  20. ArrayList<Integer> forTwoNumber = divider(twoNumber);
  21.  
  22. int NOD = 0;
  23.  
  24. for (int i = 0; i < forOneNumber.size(); i++) {
  25. for (int j = 0; j < forTwoNumber.size(); j++) {
  26. if (forOneNumber.get(i).equals(forTwoNumber.get(j))) {
  27. if (NOD == 0) {
  28. NOD = forOneNumber.get(i);
  29. } else {
  30. NOD = NOD * forTwoNumber.get(j);
  31. }
  32. forOneNumber.remove(i);
  33. forTwoNumber.remove(j);
  34. break;
  35. }
  36. }
  37. }
  38. if (NOD == 0) {
  39. NOD = 1;
  40. }
  41. System.out.println(NOD);
  42. }
  43.  
  44. private static ArrayList<Integer> divider(Integer num) {
  45. ArrayList<Integer> divider = new ArrayList<>();
  46. while (true) {
  47. if (num % 3 == 0) {
  48. num = num / 3;
  49. divider.add(3);
  50. } else if (num % 2 == 0) {
  51. num = num / 2;
  52. divider.add(2);
  53. } else {
  54. divider.add(num);
  55. break;
  56. }
  57. }
  58. return divider;
  59. }
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement