티스토리 뷰

최대공약수

<유클리드 호제법을 이용하여 풀이>

임시변수(나머지)에 a(나누어진 수)와 b(나누는 수)를 나머지 연산하여 값을 넣는다. 그리고 a(나누어진 수)에 기존 b(나누는 수)를 넣고, b(나누는 수)에 나머지 값r을 넣는다. 이렇게 b(나누는 수)가 0 이 될때 까지 반복!

그때 a의 값은 최대 공약수가 된다.

 

 

최소공배수최소공배수

두수의 곱 / 두수의 최대공약수(gcd)

 

구해진 최대 공약수를 두수의 곱으로 나누면 최소공배수가 된다.

 

여기서 중요!

 

2중 for문을 통해 모든 경우의 수에 대해 최소공배수를 구하며는 안된다. 이럴경우 마지막 결과값이 return된다.

두 개의 최소공배수를 구하고, 그 최소공배수랑 배열의 다음 값이랑 다시 함수를 돌리면 구할 수 있다.

 

https://velog.io/@mkdevelop5002/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4N%EA%B0%9C%EC%9D%98-%EC%B5%9C%EC%86%8C%EA%B3%B5%EB%B0%B0%EC%88%98-with-JAVA

 

프로그래머스 문제풀이(N개의 최소공배수) with JAVA

오랫만에 풀어보는 코딩테스트 문제이다. 요새 학교 공부랑 날이 좋아서 내 공부를 따로 많이 못했다(핑계;). 숫자 배열이 주어지면 그 숫자들의 공통된 최소공배수를 구하는 문제이다.최대공약

velog.io

 

최소공배수 문제는 저번에 풀어본적있지만 전혀 기억이 안나서 매우 어려웠다.. 복습이 무조건! 꼭! 필요하다.

'알고리즘' 카테고리의 다른 글

<Programmers> 소수 만들기  (0) 2020.05.02
<Programmers> 짝지어 제거하기  (0) 2020.05.01
<Programmers> JadenCase 문자열 만들기  (0) 2020.04.30
<Programmers> 행렬의 곱셈(실패)  (0) 2020.04.30
<Programmers> 피보나치 수  (0) 2020.04.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
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 31
글 보관함