728x90
# 문제
순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.
# 답안
// 1. 입력: n -> 자연수 1,2,3 같은거
// 2. 출력: 두 숫자의 곱이 n인 자연수 순서쌍의 개수
function solution(n) {
let count = 0;
for (let i = 1; i <= n; i++) {
if (n % i === 0) {
count++;
}
}
return count;
}
# 인사이트
// 길이 개념으로 생각하는게 아니라, 개수를 ++해서 count를 하는 방식으로 해야한다.
// ( n % i === 0 ) 이렇게 적으면 나머지가 0 이라서 "나누기가 가능하다" 라는 뜻이 된다.
< 과정 >
1. count 변수를 사용하여 자연수 순서쌍의 개수를 추적한다.
2. for 반복문을 사용하여 1부터 n까지의 수를 확인한다. 왜냐하면 두 숫자의 곱이 n이 되려면 1부터 n까지의 수 중 하나가 될 수밖에 없기 때문이다.
3. 만약 n을 현재 숫자로 나눌 수 있다면(나머지가 0이면) count를 1 증가시킨다.
4. 최종적으로 count를 반환한다.
728x90
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 29 - 중앙값 구하기 ) (0) | 2024.02.02 |
---|---|
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 28 - 배열 두 배 만들기) → map, reduce, for, forEach, for...of 다 사용해보기 (0) | 2024.02.01 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 26 - 문자열 뒤집기) (0) | 2024.02.01 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 25 - 문자 반복 출력하기) (0) | 2024.02.01 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 24 - 중복된 숫자 개수) (0) | 2024.02.01 |