정수 배열을 유일한 인수로 취하는 JavaScript 함수를 작성해야 합니다.
함수는 먼저 길이가 홀수인 원래 배열에서 가능한 모든 하위 배열을 치환해야 합니다. 그런 다음 함수는 해당 하위 배열의 모든 요소의 결합된 합계를 찾고 합계를 반환해야 합니다.
예를 들어 -
입력 배열이 -
인 경우const arr = [1, 2, 3];
그러면 출력은 다음과 같아야 합니다. -
const output = 12;
원하는 하위 배열이 [1], [2], [3], [1, 2, 3]
이기 때문입니다.예시
다음은 코드입니다 -
const arr1 = [1, 2, 3]; const arr2 = [1, 2, 3, 4, 5, 6]; const sumOfOddLengthSubarrays = (arr = []) => { let res = 0; for(let i = 0; i < arr.length; i++){ let sum = 0; for(let j = i; j < arr.length; j++){ sum += arr[j]; if (((j - i + 1) & 1) === 0) { continue; }; res += sum; } }; return res; }; console.log(sumOfOddLengthSubarrays(arr1)); console.log(sumOfOddLengthSubarrays(arr2));
출력
다음은 콘솔 출력입니다 -
12 98