등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해보세요.
제한사항
function solution(common) {
let diff1 = common[1] - common[0];
let diff2 = common[2] - common[1];
let ratio = common[1] / common[0]
return diff1 === diff2 ? common.at(-1) + diff1 : common.at(-1) * ratio;
}
첨엔 등차수열만 있는 줄 알고 개쌉쉽네! 하고 풀었다가 틀려벌임... 다시보니 등비수열도 있음 문제를 잘 읽자
diff1
과 diff2
는 common 배열의 0과 1의 차, 1과 2의 차이다.common.at(-1)
)을 불러와 diff1을 더해준다.ratio
)를 구해서 마지막 원소에서 곱해준다. function solution(common) {
if ((common[1]-common[0])==(common[2]-common[1])){
return common.pop() + common[1] - common[0];
}
else{
return common.pop()*common[1]/common[0];
}
}
const solution = c => c[1]-c[0] === c[2]-c[1] ? c[c.length-1] + c[1] - c[0] : c[c.length-1] * c[1] / c[0]
삼항연산자를 사용했지만 결국 다 같은 내용이다!