2023년 1월 1일
08:00 AM
Buffering ...

최근 글 👑

Lv0 JS 프로그래머스 #9 - 자릿수 더하기, 머쓱이보다 키 큰 사람, 순서쌍의 개수

2023. 8. 11. 20:52ㆍ프로그래머스 JS 코딩테스트
반응형

 

28. 자릿수 더하기

 

문제 설명

  • 정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요

제한사항

  • 0 ≤ n ≤ 1,000,000

입출력 예시

  • 1 + 2 + 3 + 4 = 10을 return합니다.
  • 9 + 3 + 0 + 2 + 1 + 1 = 16을 return합니다.

풀이

const solution = n => {
	// n은 정수, split 메서드를 쓰기위해 문자열로 변환
    // 변환 후 배열의 모든 값을 더하기 위해 reduce 메서드 이용
    // val의 값은 string, 수의 덧셈을 위해 Int형식으로 변환
    return n.toString().split("").reduce((acc,val)=> acc + parseInt(val), 0)
}

 

29. 머쓱이보다 키 큰 사람

 

문제 설명

  • 머쓱이는 학교에서 키 순으로 줄을 설 때 몇 번째로 서야 하는지 궁금해졌습니다. 머쓱이네 반 친구들의 키가 담긴 정수 배열 array와 머쓱이의 키 height가 매개변수로 주어질 때, 머쓱이보다 키 큰 사람 수를 return 하도록 solution 함수를 완성해보세요.

제한사항

  • 1 ≤ array의 길이 ≤ 100 
  • 1 ≤ height ≤ 200 
  • 1 ≤ array의 원소 ≤ 200

입출력 예시

  • 149, 180, 192, 170 중 머쓱이보다 키가 큰 사람은 180, 192, 170으로 세 명입니다.
  • 180, 120, 140 중 190보다 큰 수는 없으므로 0명입니다.

풀이

const solution = (array, height) => {
    // 배엘에 머쓱이의 키 추가
    // 내림차순으로 정렬
    // 머쓱이의 키 이전 인덱스까지 찾은 후 반환
    array.push(height);
    array.sort((a,b) => b-a);
    return array.findIndex(val => val === height);
}

 

30. 순서쌍의 개수

 

문제 설명

  • 순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요

제한사항

  • 1 ≤ n ≤ 1,000,000

입출력 예시

  • n이 20 이므로 곱이 20인 순서쌍은 (1, 20), (2, 10), (4, 5), (5, 4), (10, 2), (20, 1) 이므로 6을 return합니다.
  • n이 100 이므로 곱이 100인 순서쌍은 (1, 100), (2, 50), (4, 25), (5, 20), (10, 10), (20, 5), (25, 4), (50, 2), (100, 1) 이므로 9를 return합니다.

풀이

const solution = n => {
    let sum = 0;
    // i는 모든 n의 수를 확인
    for(let i = 0; i < n + 1; i++){
    // i를 나누었을 때 나머지가 발생 X => 순서 쌍 개수 + 1
        if(n % i === 0){
                sum += 1;
        }
    }
    return sum;
}

 

  • 정답률 높은 순부터 풀이
  • 매일 3 문항 풀이
반응형