문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/62048# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 이 문제에서 사용하지 못하는 사각형의 갯수를 구하는 것이 중점인 문제였다. 이 로직은 초등학교 경시대회에서도 나온 로직이다....(초등학생들 대단해....) 로직은 최대 공약수를 구하는 것이 핵심이였다. (전체 단위 블럭 갯수) - (가로 + 세로 - (가로 세로의 최대공약수)) 가 대각선이 지나는 단위 블럭의 갯수이다. 예외 처리는 2개로 처리했으며 각각 가로 세로가..
유클리드 호제법
문제 설명 제한 사항 문제 풀이 방법 이 문제는 유클리드 호제법을 이용해 최대 공약수를 구한 뒤 최소 공배수를 구하는 방식으로 풀었다. 간략하게 정리하면 a, b 두 수(a > b)를 나누고 나온 나머지가 0이 될 때 까지 진행하며, 나머지가 0이 될 때의 a가 두 수의 최대 공약수가 된다. 최소 공배수는 두 수를 곱한 값을 최대 공약수로 나눈 값이다. 내가 작성한 코드 const solution = (n, m) => { // 최대 공약수는 유클리드 호제법을 이용해 작성 const getGcd = (a, b) => a % b === 0 ? b : getGcd(b, a%b) const gcd = getGcd(n, m); // 최소 공배수는 위에서 구한 최대 공약수를 이용해 구할 수 있다. const get..