알고리즘공부 4일차,,! 오늘도 열심히 풀어보자구~
나만의 카카오 성격 유형 검사지를 만드는 문제였다.
나의 풀이는 아래와 같다.
function solution(survey, choices) {
const object = new Object({
R:0,
T:0,
C:0,
F:0,
J:0,
M:0,
A:0,
N:0,
})
let c = [];
for(let i of choices){
c.push(i-4)
}
for(let i = 0; i<survey.length;i++){
if(c[i]<0) object[survey[i][0]] += Math.abs(c[i])
else if(c[i]>0) object[survey[i][1]] += c[i]
}
let str = '';
if(object['T']>object['R']) str = str+'T';
else str = str+'R'
if(object['F']>object['C']) str = str+'F';
else str = str+'C'
if(object['M']>object['J']) str = str+'M';
else str = str+'J'
if(object['N']>object['A']) str = str+'N';
else str = str+'A'
return str
}
자꾸 효율성 테스트 4번에서 실패가 뜨는데 왜그러는지 알수가 없다,,,내장함수 하나는 더 만들어서 그런가,,? filter를 써서 그런지 함수를 밖으로 빼면 효율성테스트 2번에서 실패가나고 어떻게 해야하는지 고민을 더 해봐야겠다.