코딩 테스트 연습/프로그래머스 level 19 [프로그래머스] lv1. 나머지가 1이 되는 수 찾기 (JS) ❓ 문제 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 해결하기 n을 x로 나눈 나머지가 1이 되게 하는 가장 작은 자연수를 찾으라고 하였으므로 1부터 수를 1씩 증가시키면서 그 수로 n을 나누었을 때 나머지가 1이 나오면 그 수를 return하도록 코드를 작성하면 된다. 문제 해결법은 매우 간단하지만 코드를 작성하는 방법은 여러가지이다. 위 풀이법이 여러 코드를 관통한다. 💻 JS로 코드 작성해보기 1️⃣ 정석적인 방법 n을 나눌 수는 1부터 시.. 2023. 7. 1. [프로그래머스] lv1. 자릿수 더하기 ❓ 문제 💡 해결하기 입력되는 숫자를 type() 함수를 통해 알아본 결과 int형이었다. 자릿수를 더한 값을 구하는 방법에는 다음과 같은 방법이 있다. 1️⃣ 숫자를 문자열로 바꾸어 그 요소를 하나씩 더하기 숫자는 각 자리수로 분해가 불가하지만 문자열의 경우 가능하다. 따라서 숫자를 문자열로 바꾼 뒤 요소 하나하나를 탐색하여 더하면 된다. 물론, 더할 때에는 다시 int형으로 바꾸어 주어야 한다. 📌 Python def solution(number): answer = 0 for s in str(number): answer += int(s) return answer 또는 다음과 같이 map() 함수와 sum() 함수를 이용하여 간단하게 처리할 수 있다. def solution(number): return.. 2023. 4. 25. [프로그래머스] lv1. 평균 구하기 ❓ 문제 💡 해결하기 평균값을 구하는 공색대로 arr의 원소들을 모두 합한 뒤 arr의 길이로 나누면 된다. 📌 Python sum() 함수를 이용해 arr 배열의 원소를 한꺼번에 더한 후 배열 arr의 길이로 나누면 된다. def solution(arr): return sum(arr) / len(arr) 📌 Javascript JS에서는 내장함수 sum이 존재하지 않는다. 따라서 다음과 같이 for문을 이용하여 원소를 하나씩 탐색하여 하나씩 더해준다. function solution(arr) { let sum = 0; for (e of arr) { sum += e; } return sum / arr.length; } 혹은 다음과 같이 reduce() 메서드를 이용하여 원소의 값을 누적할 수도 있다. f.. 2023. 4. 25. [프로그래머스] lv1. 약수의 합 ❓ 문제 💡 해결하기 기본적인 방법으로는 1 이상 n 이하의 범위의 자연수로 n을 하나씩 나누어 봐서 나머지가 0이 나오게 하는 수가 약수가 되므로 이들을 더한 값을 반환하면 된다. 그런데 약수에 자기 자신이 포함되는 것은 모든 자연수에 해당한다. 따라서 범위를 1에서 n을 2로 나눈 몫까지로 정하고, 마지막에 자기 자신을 따로 더해주면 불필요한 연산이 줄어들어 효율성이 높아진다. 📌 Python def solution(n): return sum([d for d in range(1, n // 2 + 1) if n % d == 0]) + n 📌 Javascript JS의 경우, 위와 같은 원리로 범위를 divisor 2023. 4. 25. 이전 1 2 3 다음