我通过的代码在耗时和内存消耗上并不是很优的,记录一下我这比较笨的人的通过的相对好理解的代码
class Solution {
public:
int sumOddLengthSubarrays(vector<int>& arr) {
int sum = 0;
int tmp_sub_arr_sum;
int start,end;
for(start = 0;start<arr.size();++start)
{
tmp_sub_arr_sum = 0;//每一趟开始时,将它清0,准备统计新的一轮
for(end=start;end<arr.size();++end)
{
if((end-start+1)%2 == 1)
{ //如果这个子数组长度是奇数的话,子数组的元素和更新,然后再更新sum
tmp_sub_arr_sum = tmp_sub_arr_sum + arr[end];
sum = sum + tmp_sub_arr_sum;
}else{
//如果子数组长度是偶数的话,就只需要更新子数组的元素和。
tmp_sub_arr_sum = tmp_sub_arr_sum + arr[end];
}
}
}
return sum;
}
};