📌 Найти максимальный подмассив



Сложность: Средняя



Условие задачи: дан целочисленный массив, необходимо найти в нем такой подмассив, сумма элементов в котором будет максимальной.



Подмассивом называется последовательная часть исходного массива.



Пример:



Ввод:
nums = [-2,1,-3,4,-1,2,1,-5,4]

Вывод:
6



Объяснение:
4,-1,2,1] имеет наибольшую сумму 6.



Ввод:
nums = [5,4,-1,7,8]

Вывод:
23



Решение:



public class Solution {

public int MaxSubArray(int[] nums) {

int res = nums[0], sum = nums[0], i = 1;

while (i < nums.Length)

{

if (nums[i] > nums[i] + sum) sum = nums[i];

else sum = nums[i] + sum;



if (sum > res) res = sum;

i++;

}

return res;

}

}




Пишите свое решение в комментариях👇



@csharp_ci