MaxSliceSum::solution()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 12
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 12
rs 9.4285
cc 2
eloc 8
nc 2
nop 1
1
<?php
2
3
namespace Lesson07;
4
5
class MaxSliceSum
6
{
7
    public function solution($A)
8
    {
9
        $N = count($A);
10
        $maxSum = $A[0];
11
        $maxSumAfter = $A[0];
12
        for ($i = 1; $i < $N; $i++) {
13
            $maxSumAfter = max($A[$i], $maxSumAfter + $A[$i]);
14
            $maxSum = max($maxSum, $maxSumAfter);
15
        }
16
17
        return $maxSum;
18
    }
19
}
20