#유형 : 수학
#난이도 : LV2
# 최대공약수와 최소공배수의 원리를 이해하고 있으면 쉽게 접근할 수 있던 문제
# 너무 오랜만에 풀어서 최소공배수 원리를 까먹었다..
* 최소공배수 = 두 수의 곱 / 두수의 최대공약수
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
class Solution {
public int solution(int[] arr) {
int answer = arr[0];
for(int i=0; i<arr.length; i++){
answer = lcm(answer, arr[i]);
}
return answer;
}
static int gcd(int a, int b){
if(a%b == 0){
return b;
}
return gcd(b, a%b);
}
static int lcm(int a, int b){
return a*b / gcd(a,b);
}
}
|
cs |
'프로그래머스' 카테고리의 다른 글
#프로그래머스_피보나치 수 - Java 자바 (0) | 2021.12.21 |
---|---|
#프로그래머스_JadenCase 문자열 만들기 - Java 자바 (0) | 2021.12.21 |
#프로그래머스_거리두기 확인하기 - Java 자바 (0) | 2021.12.13 |
#프로그래머스_수식 최대화 - Java 자바 (0) | 2021.12.12 |
#프로그래머스_튜플 - Java 자바 (0) | 2021.12.10 |