알고리즘 문제

[14일차] 프로그래머스 LV.1

잼굴 2022. 11. 24. 14:27

문제 1. 최대공약수와 최소공배수

 

풀이순서:

1. 최대공약수 = 1 제외 나눌수있는 가장 큰 수중 공통된 수

2. 최소공배수 = 1 제외 배수중 공통된 가장 큰 수

3. for문을 사용해서 최대 공약수를 찾는다. (length를 지정할 수 있음, 제시된 수 중 작은수만큼 반복)

4. while문을 사용해서 최소 공배수를 찾는다. (length를 특정할 수 없기 때문)

 

function solution(n, m) {
    var answer = [];
    let yaksoo = 1
    let baesoo = 1
    
    for(i=2; i<=Math.min(n,m); i++){
        if(n%i==0 && m%i == 0){
            yaksoo = i
        }
    }
 while(true){
      if((baesoo % n == 0) && (baesoo % m == 0)){
        break;
      }
      baesoo++;
    }
    answer.push(yaksoo,baesoo)
    return answer;
}