1. 생각
// 생각
// 두 수의 최소공배수 구하는 걸 반복
2. 회고
- 최소공배수 구하는 함수를 만든 후 배열에 있는 수끼리 최소공배수를 구해나가면 될 것이라고 생각함. 그래서 최소공배수 구하는 함수를 먼저 구현하고자 함.
- 약간의 시행착오가 있었지만 반복문을 사용해서 최소공배수 구하는 함수를 만들었음. 내가 구현한 방식은 소인수분해를 이용하여 구현한 방식이고 다른 방법도 있는 것 같음.
- 다른 방식 중 하나는 유클리드 호제법을 활용하는 것. 유클리드 호제법에 대한 설명은 알고리즘 글 참고.
3. 기억
- 유클리드 호제법 재귀로 구현
public static int gcd(int num1, int num2){
// num1 > num2 라고 가정
if(num2 == 0){
return num1;
}else{
return gcd(num2, num1%num2);
}
}
- 두 수의 곱을 최대공약수로 나누면 두 수의 최소공배수를 구할 수 있다
4. 체크
풀이 횟수 | 시간 | 정답 여부 | 참고 여부 |
1 | 50분 | O |
'코딩테스트' 카테고리의 다른 글
[프로그래머스/자바] 괄호 회전하기_76502 (0) | 2023.07.27 |
---|---|
[프로그래머스/자바] 멀리 뛰기_12914 (0) | 2023.07.26 |
[프로그래머스/자바] 예상 대진표_12985 (0) | 2023.07.25 |
[프로그래머스] 영어 끝말잇기_12981 (0) | 2023.07.24 |
[프로그래머스] 짝지어 제거하기_12973 (0) | 2023.07.24 |