프로그래머스 | Lv.2_연습문제_Part.4_JS

김명성·2021년 12월 6일
0

Algorithm

목록 보기
57/61
post-thumbnail

난이도 : Level. 2
언어 : Javascript
출제 내역 : 연습문제

전체 풀이 코드 👈🏻 클릭시 Github로 이동

❓ Question 1

숫자의 표현

  • 어떤 자연수를 연속된 숫자로 표현하기

📝 My Solution 1

function solution(n) {
  let answer = 0;
  let num = 1;
  while (num <= n) {
    let sum = 0;
    for (let i = num; i <= n; i++) {
      sum += i;
      if (sum === n) {
        answer++;
        break;
      } else if (sum > n) {
        break;
      }
    }
    num++;
  }
  return answer;
}

반복문과 while을 활용해서 문제를 해결해 봤습니다.
효율성 측면에서 떨어질 줄 알았으나 통과가 됐네요 ㅎㅎ

결과


❓ Question 2

최솟값 만들기

  • 두개의 배열에서 곱한 수를 더한 것 중 최솟값 찾기

📝 My Solution 2

function solution(A, B) {
  const arrA = A.sort((a, b) => a - b);
  const arrB = B.sort((a, b) => b - a);
  let answer = 0;
  for (let i = 0; i < arrA.length; i++) {
    answer += arrA[i] * arrB[i];
  }
  return answer;
}

A 배열은 오름차순으로 B 배열은 내림차순으로 정렬해서
각 배열의 인덱스별로 곱해서 더한 값을 도출한다

결과


참고 한 글

profile
잠재력은 핵폭탄급 Frontend Developer

0개의 댓글

관련 채용 정보