다음에 올 숫자

miin·2024년 3월 1일
0

Algorithm

목록 보기
13/14
post-thumbnail

문제설명

등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해보세요.

제한 사항

2 < common의 길이 < 1,000
-1,000 < common의 원소 < 2,000
(common의 원소는 모두 정수입니다.)
등차수열 혹은 등비수열이 아닌 경우는 없습니다.
등비수열인 경우 공비는 0이 아닌 정수입니다.

입출력예

common result
[1,2,3,4] 5
[2,4,8] 16

풀이

  • common의 길이는 무조건 3이상이다

  • 등차, 등비가 아닌 경우는 없으므로, 인덱스2 - 인덱스1 의 차이가 인덱스1 - 인덱스0의 차이와 같으면 등차수열 다르면 등비수열

  • 등차수열 : 첫째항에 일정한 수를 더해서 얻은 항, 일정한 수를 공차라고 함

  • 등비수열 : 첫째항에 일정한 수를 곱해서 얻은 항, 일정한 수를 공비라고 함

  • 공비 구하는 공식 : 인덱스1 / 인덱스0

코드

function solution(common) {
 const first = common[2] - common[1]
 const second = common[1] - common[0]

 first === second
	? common[common.length -1] + first
	: common[common.length -1] * (common[1] / common[0])
}

console.log(solution([3,6,9]))

0개의 댓글