문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
주어진 숫자의 각 자릿 수를 더해라.
아이디어
1. 주어진 숫자를 문자열로 만들어서 반복문을 돌리자.
2. 그리고 해당 문자열을 다시 숫자로 치환해서 answer에 합하자
구현(풀이)
function solution(n) {
const stringNumber = n.toString()
var answer = 0;
for (var i=0; i< stringNumber.length; i++ ){
answer += parseInt(stringNumber[i],10)
}
return answer;
}
남의 풀이
function solution(n) {
return n
.toString()
.split("")
.reduce((acc, cur) => acc + Number(cur), 0);
}
- obj.toString() : 객체를 문자열로 바꾸어서 반환한다. ( ex. 12345 -> "12345")
- string.split() : string을 separator을 기준으로 문자열을 나누어 담은 배열을 반환합니다. ( ex. "12345" -> ["1", "2", "3", "4", "5"])
- array.reduce() : 배열의 각 요소에 대해서 콜백함수를 실행하여 하나의 함수를 반환합니다. callback, initialValue 로 초기값을 설정할 수 있습니다. ( ex. ["1", "2", "3", "4", "5"].reduce((acc, cur) => acc + Number(cur), 0) -> 10 )
참고문서
- mdn, toStirng : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Object/toString
- mdn, reduce : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce
- mdn, split : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toString
'TIL > 이전 풀이' 카테고리의 다른 글
[js] Programmers_Lv.0_소인수분해 (0) | 2023.03.28 |
---|---|
[js] Programmers_Lv.0_인덱스 바꾸기 (0) | 2023.03.28 |
[js] leetcode_235. Lowest Common Ancestor of a Binary Search Tree (0) | 2023.03.07 |
[python] leetcode_235. Lowest Common Ancestor of a Binary Search Tree (1) | 2023.03.06 |
[python] Leetcode 46. Permutations (0) | 2022.12.13 |