In this lab assignment, your job is to implement the O(n log n) time divideand-conquer algorithm for the Max Subarray Problem; for the pseudo-code, see page 72 in the
textbook or the lecture slides. Recall that in the problem, we are given as input an array A[1 · · · n]
of n integers, and would like to find i
∗ and j
∗
(1 ≤ i
∗ ≤ j
∗ ≤ n) such that A[i
∗
] + A[i
∗ + 1] +
· · · + A[j
∗
] is maximized.Input structure The input starts with an integer number n, which indicates the array size.
Then, the integers, A[1], A[2], · · · , A[n], follow, one per line.Output structure Output the sum of integers in the max subarray, i.e., A[i
∗
] + A[i
∗ + 1] +
· · · + A[j
∗
].
Examples of input and output:
Input
6
-3
11
-2
-3
10
-5Output
16
Note that in this example, the max subarray is A[2 · · · 5]. So, we output A[i
∗
] + · · · + A[j
∗
] =
11 − 2 − 3 + 10 = 16. The output is only one number and has no white space.
See the lab guidelines for submission/grading, etc., which can be found in Files/Labs.
CSE100, Divide-and-conquer, Problem, solved, Solving, Subarray
[SOLVED] Cse100 lab 03 solving the max subarray problem via divide-and-conquer
$25
File Name: Cse100_lab_03_solving_the_max_subarray_problem_via_divide_and_conquer.zip
File Size: 649.98 KB
Only logged in customers who have purchased this product may leave a review.
Reviews
There are no reviews yet.