Programmers
[프로그래머스][JS] 다음에 올 숫자
winter17
2023. 7. 5. 12:01
https://school.programmers.co.kr/learn/courses/30/lessons/120924
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이 과정
function solution(common) {
const diff = common[1] - common[0] // 등차수열
const ratio = common[1] / common[0] // 등비수열
const len = common.length
if (common[len - 2] + diff === common[len - 1]){
return common[len - 1] + diff
}else if (common[len - 2] * ratio === common[len - 1]){
return common[len - 1] * ratio
}
}
등차수열, 등비수열을 구하는 문제인데 적어도 3개의 항을 확인해야 한다.
1. 첫 번째 조건문에서 마지막에서 두 번째 요소에 등차 값을 더해서 마지막 요소와 같다면 등차수열
2. 두 번째 조건문에서 마지막에서 두 번째 요소에 등비 값을 곱해서 마지막 요소와 같다면 등비수열
등비수열인데 첫 번째 요소가 1로 시작하는 경우도 고려해야 한다!
리뷰
등비, 등차수열을 적어도 3개의 항을 확인해야 하는데 두 개의 항만 비교해서 계속해서 오류가 발생했었다.