반응형
짧음주의!
문제 설명
한자리씩 끊어서 덧셈을 해주면 된다.
1234 => 1+2+3+4 = 10
더 자세한 설명은 원하시면 아래 링크 참조해주세요.
https://school.programmers.co.kr/learn/courses/30/lessons/120906
나의 풀이
split()을 활용하여 한자리씩 끊어서 덧셈을 해주었다.
function solution(n) {
let input = n.toString().split('');
var answer = 0;
for(let i=0; i < input.length; i++){
answer = answer + parseInt(input[i]);
}
return answer;
}
다른사람들의 풀이
1. Reduce() 활용
- For문을 대신해서 reduce를 사용하였고, 한줄로 코딩을 마무리했다.
function solution(n) {
var answer = n.toString().split('').reduce((a, b) => parseInt(a) + parseInt(b), 0);
return answer;
}
다른 코딩들도 많았고 map으로 형변환을 해주는 코드도 가능하지만, 내가 생각했을때, for문 또는 Reduce로 진행하는것이 더 최적화된 코드이지 않나 싶다.
반응형
'Javascript > 코딩테스트-연습' 카테고리의 다른 글
[JavaScript] 외계행성의 나이 - 프로그래머스 (25) | 2024.03.23 |
---|---|
[JavaScript] 대문자와 소문자 - 프로그래머스 (25) | 2024.03.22 |
[JavaScript] 세균 증식 - 프로그래머스 (23) | 2024.03.21 |
[JavaScript] 영어가 싫어요 - 프로그래머스 (27) | 2024.03.20 |
[JavaScript] 옷 가게 할인받기 - 프로그래머스 (22) | 2024.03.20 |