Viết hàm tính tổng tất cả phần tử của mọi subarray có độ dài lẻ của mảng đầu vào.
Ví dụ: [1,2,3] → 12 (subarray: [1],[2],[3],[1,2,3]).
Ví dụ
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));
Kết quả
12 98