1. Coding Test

1. 컨트롤 제트

Untitled

function solution(s) {
    const a = s.split(' ')
    return a.reduce((acc, cur, curIndex) => {
        if (cur === 'Z') {
            return acc - a[curIndex - 1]
        }
        else {
            return Number(acc) + Number(cur)
        }
    }, 0)
}

문자열로 주어지기 때문에, split method를 먼저 진행하고, reduce를 통해 각각의 인자를 더해준다.

만약, Z가 주어지는 경우, curIndex - 1을 하여 전에 있던 index를 빼주는 형태로 진행

2. 중복된 문자 제거

Untitled

function solution(my_string) {
    let sort = [...new Set(my_string.split(''))].reduce((acc, cur)=> {
        return  acc + cur
    })
    console.log(sort)
    return sort;
}

Set의 특징(고유한 값을 저장하는 자료구조)를 통해서 문제를 해결.

이후 reduce를 통해서 각각의 값을 합쳐준다.

// 다른 사람 문제 풀이
function solution(my_string) {
	return [...new Set(my_string)].join('');
}