글 작성자: bbangson
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/181936

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 


난이도 : Lv.0

Javascript에서 제공하는 연산자 문법들을 잘 활용해볼 수 있는 문제인 것 같습니다.

코드

function solution(number, n, m) {
    return +!(number % n || number % m);
}

공배수는 두 개 이상 자연수의 공통인 배수입니다.

 

주어진 입력 number가 n과 m으로 나누어 떨어지면 공배수라 할 수 있습니다.

number % n || number % m 으로 나눗셈의 나머지를 확인합니다.

|| 연산자로 구분된 값들이 0으로 떨어지면 false를 반환합니다.

 

false를 반환한다는 것은 두 값 모두 0으로 나누어떨어진다는 의미입니다. 공배수라는 뜻이죠. 그렇다면 true를 반환해야합니다.

true를 반환하기 위해 앞에 ! 연산자를 이용하여 논리적으로 반전시킵니다.

 

하지만 정답은 숫자(0, 1)로 반환해야 하기 때문에, +연산자를 추가로 앞에 붙여 boolean 값을 숫자로 변환합니다.

따라서, +true = 1, +false = 0의 결과가 도출되게 됩니다.

 

 

 

 

피드백 환영합니다.

반응형