Change hw6 to an unsolved version.

Signed-off-by: jmug <u.g.a.mariano@gmail.com>
This commit is contained in:
Mariano Uvalle 2025-01-24 23:10:01 -08:00
parent 0c04936ccf
commit ee01a8f5b2
186 changed files with 9605 additions and 4019 deletions

View file

@ -0,0 +1,41 @@
int largest_continuous_sum(int[] arr, int lo, int hi) {
if (lo == hi) {
return arr[lo];
}
var mid = (lo + hi) >> 1;
var left_sum = largest_continuous_sum(arr, lo, mid);
var right_sum = largest_continuous_sum(arr, mid + 1, hi);
var sum = arr[mid + 1];
var middle_right_sum = arr[mid + 1];
for (var i = mid + 2; i <= hi; i = i + 1; ) {
sum = sum + arr[i];
if (sum > middle_right_sum) {
middle_right_sum = sum;
}
}
sum = arr[mid];
var middle_left_sum = arr[mid];
for (var i = mid - 1; i >= lo; i = i - 1; ) {
sum = sum + arr[i];
if (sum > middle_left_sum) {
middle_left_sum = sum;
}
}
var middle_sum = middle_left_sum + middle_right_sum;
if (middle_sum > left_sum & middle_sum > right_sum) {
return middle_sum;
} else if (left_sum > middle_sum & left_sum > right_sum) {
return left_sum;
}
return right_sum;
}
int program(int argc, string[] argv) {
var arr = new int[]{2, -3, 100, 5, 20, -50};
return largest_continuous_sum(arr, 0, 5);
}