public class Solution {
    /**
     * max sum of the subarray
     * @param arr int整型一维数组 the array
     * @return int整型
     */
    public int maxsumofSubarray (int[] arr) {
        // sum 表示该位置前一个的和
        int sum = 0, max = 0;
        for (int i = 0; i < arr.length; i++)
        {
            // 加上位置i的和,或者从零开始
            sum = Math.max(0, arr[i] + sum);
            max = Math.max(max, sum);
        }
        return max;
    }
}