Question
What is the output of the following naive method used to find the maximum sub-array sum?#includeint main(){ int arr[1000] = {-2, -5, 6, -2, 3, -1, 0,-5, 6}, len = 9; int cur_max, tmp_max, strt_idx, sub_arr_idx; cur_max = arr[0]; for(strt_idx = 0; strt_idx < len; strt_idx++) { tmp_max = 0; for(sub_arr_idx = strt_idx; sub_arr_idx < len; sub_arr_idx++) { tmp_max += arr[sub_arr_idx]; if(tmp_max > cur_max) cur_max = tmp_max; } } printf("%d",cur_max); return 0;}
Answer: Option C
Was this answer helpful ?
The naive method prints the maximum sub-array sum, which is 7.
Was this answer helpful ?
Submit Solution