문제
"{{1,2,3},{2,1},{1,2,4,3},{2}}"
정답) [2, 1, 3, 4]
코드
function solution(s) {
var answer = [];
let tuple_arr = makeArr(s);
let sum = 0;
for(let i=0; i<tuple_arr.length; i++){
let tuple_el = tuple_arr.find(tuple=>{return tuple.length === i+1});
if(answer.length === 0) {
sum = 0;
} else {
sum = answer.reduce((a, b)=>{return a+b});
}
answer.push(tuple_el.reduce((a, b)=>{return a+b})-sum);
}
return answer;
}
function makeArr(s){
let s_arr = s.split(',{');
let new_arr = [];
s_arr.forEach(arr=>{
arr = arr.replace(/{/gi, '');
arr = arr.replace(/}/gi, '');
new_arr.push(arr.split(',').map(ar=>Number(ar)));
})
return new_arr;
}
후기
방법
- makeArr 함수
- ,{ 로 배열을 만듦
- {, } 삭제
- 새로운 배열(new_arr)을 리턴
- 덧셈을 이용하여 찾음
- new_arr을 반복해서 돌며 배열의 길이가 1~n+1 인 배열을 순서대로 찾음
- 배열의 합-sum을 이용하여 검색