[프로그래머스 LV.0] (Javascript) 다음에 올 숫자

Hannah Lee·2023년 1월 3일
0

프로그래머스 LV.0

목록 보기
2/10

😎 링크

프로그래머스 - 다음에 올 숫자

😎 고려할 사항

  • 주어진 배열에서 앞 2개의 차이와 끝 2개의 차이를 비교한다.
  • 무조건 등차 아니면 등비수열이므로, 빼기 차이가 같지 않으면 등비수열이다.
  • 참고로 조건처리가 잘 되어있어, 배열의 길이는 무조건 3 이상이므로 인덱스 0-1-2 끼리 비교해도 된다.
  • 즉, 꼭 앞 2개-끝 2개를 비교하지 않아도 된다.

😎 소스코드

function solution(common) {
  var answer = 0;
  let flag, diff;

  if (
    common[1] - common[0] ===
    common[common.length - 1] - common[common.length - 2]
  ) {
    flag = "등차";
    diff = common[1] - common[0];
  } else {
    flag = "등비";
    if (common[0] !== 0) {
      diff = common[1] / common[0];
    }
  }

  if (flag === "등차") {
    answer = common[common.length - 1] + diff;
  } else if (flag === "등비") {
    answer = common[common.length - 1] * diff;
  } else {
    console.log("등차 등비 말고는 안나온다며");
  }

  return answer;
}

😎 문법 정리

  • X
profile
프론트 어쩌고

0개의 댓글