문제설명
: 자연수 n의 각 자리 숫자를 뒤집은 순서로 더해 출력하는 수식을 리턴 하세요.
예를 들어 n이 12345이면 "5+4+3+2+1=15"라는 문자열을 리턴합니다.
제한사항
- N의 범위 : 100,000,000 이하의 자연수
입출력 예
지정 입력값
문제풀이
- 첫번째 문제 풀이
function solution(n){
let array = []
let total = 0
let result = ''
// n을 뒤집는다
array = n.toString().split("").reverse()
// 각 자릿수를 더한 합계를 구한다.
for(let i = 0; i<array.length; i++){
total += parseInt(array[i])
if(i == (array.length - 1)){
result += array[i]
}else{
result += array[i]+"+"
}
}
// 결과값을 return 한다.
return result+"="+total
}
solution(12345)
solution(1532576)
solution(718253)
- 두번째 문제 풀이
function solution(n){
let total = 0
let result = ''
let array = n.toString().split("").reverse()
array.forEach((item, i)=>{
total += parseInt(item);
(i==(array.length-1))?result+=item:result+=(item+"+") })
result = result+"="+total
return result
}
solution(12345)
solution(1532576)
solution(718253)
1) 숫자를 문자열로 바꾼다.
2) 한글자씩 잘라서 배열에 담는다.
3) 배열을 뒤집는다.
4) forEach 배열함수를 사용해서
- 합계를 구한다.
- 삼항연산자를 사용해서 끝 값이면 item만 담고 끝 값이 아니면 item+"+"를 담는다.
5) result+"="+total을 해서 결과값을 만들어서 return 한다.
'항해 중 > 2주차 알고리즘(프로그래머스)' 카테고리의 다른 글
알고리즘 기초 주차 - 3번 문제 풀이 방법 (0) | 2021.11.13 |
---|---|
알고리즘 기초 주차 - 1번 문제 풀이 방법 (0) | 2021.11.13 |
5일차 → 신규 아이디 추천(정규표현식, replace(), slice(), charAt(), repeat()) (0) | 2021.11.12 |
5일차 → 소수 만들기(소수 판별식) (0) | 2021.11.12 |
4일차 → 문자열 내 마음대로 정렬하기(return 1/-1/0, localCompare()) (0) | 2021.11.11 |
댓글