반응형
문제
N개의 자연수가 입력되면 각 자연수의 자릿수의 합을 구하고, 그 합이 최대인 자연수를 출력 하는 프로그램을 작성하세요. 자릿수의 합이 같은 경우 원래 숫자가 큰 숫자를 답으로 합니다. 만약 235 와 1234가 동시에 답이 될 수 있다면 1234를 답으로 출력해야 합니다.
풀이
function solution(N, arr) {
let maxVal = Number.MIN_SAFE_INTEGER;
let answer = Number.MIN_SAFE_INTEGER;
for (let num of arr) {
const total = [...(num + "")].map(Number).reduce((a, b) => a + b);
if (maxVal <= total) {
maxVal = total;
answer = Math.max(num, answer);
}
}
return answer;
}
let arr = [128, 460, 603, 40, 521, 137, 123];
console.log(solution(7, arr));
반응형
'Algorithm > Inflearn' 카테고리의 다른 글
[알고리즘/인프런] K번째 큰 수 (0) | 2023.05.30 |
---|---|
[알고리즘/인프런] 졸업 선물 (1) | 2023.05.30 |
[알고리즘/인프런] 뒤집은 소수 (0) | 2023.05.29 |
[알고리즘/인프런] 멘토링 (0) | 2023.05.29 |
[알고리즘/인프런] 섬나라 아일랜드 (0) | 2023.05.21 |