티스토리 뷰

프로그래머스 링크 - https://programmers.co.kr/learn/courses/30/lessons/12953?language=java


하도 귀찮아서 최소공배수 구하는 부분은 가져왔다.

원래대로라면 유클리드 방식으로 로직을 만들어야 하지만.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import java.util.*;
class Solution {
  public int solution(int[] arr) {
      int answer = 1;
      for(int i: arr){
          answer = lcm(answer, i);
      }
      return answer;
  }
    
    public static int lcm(int a, int b) {
    int gcd_value = gcd((int)a, (int)b);
 
    if (gcd_value == 0return 0// 인수가 둘다 0일 때의 에러 처리
 
    return Math.abs( (a * b) / gcd_value );
  }
    
    public static int gcd(int a, int b) {
    while (b != 0) {
      int temp = a % b;
      a = b;
      b = temp;
    }
    return Math.abs(a);
  }
 
}
cs


공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함