[알고리즘] 프로그래머스 - 최대공약수, 최소공배수
문제설명
두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다.

function solution(n, m) {
    function max(n,m){
      // n에서 m을 나눈 나머지가 0 이면 m이 return 된다. 
      // n에서 m을 나눴을때 0이 나온다는 말은 n이 m의 배수라는 말이기때문에
      // m이 최대 공약수가 된다고 할수 있다.
      // n에서 m을 나눴을때 0이외의 값이 나오게 되면 재귀함수를 사용해서 구해준다
      // 이 부분은 스터디 같이 하시는 분이 설명해주신 부분인데 이해는 되는데 혼자 구현하라고 하면 못할것같긴하다.
      return n % m ? max(m, n%m) : m;
    }
    
    const maxNum = max(n,m);
  // 최소공배수는 n과m을 곱한 값에 최대 공약수로 나눠주면 된다.
  // 그 반대의 경우도 성립한다. 
    const minNum = n*m / maxNum;
    return [maxNum, minNum];
}Author And Source
이 문제에 관하여([알고리즘] 프로그래머스 - 최대공약수, 최소공배수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dolarge/알고리즘-프로그래머스-최대공약수-최소공배수저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)