https://programmers.co.kr/learn/courses/30/lessons/12953?language=java
코딩테스트 연습 - N개의 최소공배수
두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배
programmers.co.kr
최대공약수, 최소공배수는 수학 관련된 문제에서 많이 출제되는 것 같다. arr배열 크기 자체가 15로 제한되었기 때문에 단순히 for문을 사용해서 최소공배수를 구해주면 되는 문제였다.
처음에 arr[0], arr[1] 을 가지고 answer 값을 한 번 구해준 후 계산해나갔다.
class Solution
{
public int choiso(int a, int b)
{
int temp = 0;
int originA = a;
int originB = b;
while(b!=0)
{
temp = a;
a = b;
b = temp%b;
}
return (originA*originB)/a ; // return a일 경우에는 최대공약수
}
public int solution(int[] arr)
{
int answer = choiso(arr[0], arr[1]);
for(int i=2; i<arr.length; i++)
{
answer = choiso(answer, arr[i]);
}
return answer;
}
}
'[ 다먹살 ] > - Coding' 카테고리의 다른 글
[프로그래머스] 레벨2 행렬의 곱셈 (0) | 2021.07.28 |
---|---|
[프로그래머스] 레벨2 괄호 회전하기 (0) | 2021.07.27 |
[프로그래머스] 레벨2 다음 큰 숫자 (0) | 2021.07.27 |
[구름] 레벨1 최소값 (0) | 2021.07.26 |
[프로그래머스] 레벨1 크레인 인형뽑기 (0) | 2021.07.25 |
댓글