배열 요소들의 모든 합을 반환합니다. 단, 배열에 포함된 정수 일부는 매우 클 수 있습니다.
풀이 :
function aVeryBigSum(ar: number[]): number {
return ar.reduce((acc, cur) => acc+cur, 0);
}
reduce를 활용하여 배열 요소를 순회하며 누적 합계를 계산하여 결과값을 반환합니다.
다른 풀이 :
만약 요소의 값 범위가 정해지지 않은 경우라면?
function aVeryBigSum(ar: number[]): bigint {
return ar.reduce((acc: bigint, cur: number) => acc+BigInt(cur), BigInt(0))
}
자바스크립트의 안전한 정수 범위를 초과하는 매우 큰 숫자들의 합을 계산하여 반환하기 위해 bigint 타입과 BigInt 생성자 함수 활용하여 문제를 풀 수 있을 것 같습니다.
'Fundamentals > Algorithms' 카테고리의 다른 글
[해커랭크] Mini-Max Sum (0) | 2023.11.14 |
---|---|
[해커랭크] Diagonal Difference (0) | 2023.11.13 |
[해커랭크] Compare the Triplets (0) | 2023.11.09 |
[해커랭크] Simple Array Sum (0) | 2023.11.09 |
[해커랭크] Solve Me First (0) | 2023.11.09 |