문자열 배열 s1과 s2가 주어질 때 이 두 배열에서 일치하는 원소의 개수를 출력하는 함수를 작성하라!!!
2중 for문을 통해서 각원소를 각각 비교했다.
function solution(s1, s2) {
var answer = 0;
for (word1 of s2){
for (word2 of s1){
if (word1 == word2){
answer += 1
}
}
}
return answer;
}
등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해보세요.
등비수열인지 판별해주는 함수 isGeometricSequence 함수를 만들어주고 이를통해 다음에 올 수를 계산해 줬다.
const isGeometricSequence = (sequence) =>{
const len = sequence.length
if (sequence[len-2] / sequence[len-1] === sequence[len-3] / sequence[len-2]){
return true
}else{
return false
}
}
function solution(common) {
const isGeo = isGeometricSequence(common)
var answer = 0;
const len = common.length
if (isGeo === true){
// 등비수열일 때
const diff = common[len-1] / common[len-2]
answer = common[len-1] * diff
}else{
// 등차수열일 때
const diff = common[len-1] - common[len-2]
answer = common[len-1] + diff
}
return answer;
}
정수 배열에서 특정수에 가까운 수를 기준으로 정렬해야한다.
특정수에 가까운 정도가 같다면 숫자가 큰 순으로 정렬해야한다.
단계 1) 새로운 배열을 만들어줬다.
단계 2) 새로운 배열은 각 원소가 배열이며 [가까운 정도, 숫자] 를 의미한다.
단계 3) 새로운 배열 NewList의 두번째원소로 오름차순으로 정렬 후 첫번째 원소로 내림차순으로 정렬한다.
단계 4) 조건에 맞게 정렬된 새로운 배열을 결과 출력값에 맞게 출력한다.
function solution(numlist, n) {
var answer = [];
let newList = numlist.map((el) => {
return [Math.abs(el - n), el];
});
newList.sort((a,b) => b[1]-a[1])
newList.sort((a,b) => a[0]-b[0])
answer = newList.map((el)=>{
return el[1]
})
return answer;
}