diff --git "a/lcof/\351\235\242\350\257\225\351\242\23042. \350\277\236\347\273\255\345\255\220\346\225\260\347\273\204\347\232\204\346\234\200\345\244\247\345\222\214/README.md" "b/lcof/\351\235\242\350\257\225\351\242\23042. \350\277\236\347\273\255\345\255\220\346\225\260\347\273\204\347\232\204\346\234\200\345\244\247\345\222\214/README.md" index 0e22e5f0bb5c2..002c2cc42d3a5 100644 --- "a/lcof/\351\235\242\350\257\225\351\242\23042. \350\277\236\347\273\255\345\255\220\346\225\260\347\273\204\347\232\204\346\234\200\345\244\247\345\222\214/README.md" +++ "b/lcof/\351\235\242\350\257\225\351\242\23042. \350\277\236\347\273\255\345\255\220\346\225\260\347\273\204\347\232\204\346\234\200\345\244\247\345\222\214/README.md" @@ -189,6 +189,24 @@ public class Solution { } ``` +#### Swift + +```swift +class Solution { + func maxSubArray(_ nums: [Int]) -> Int { + var ans = Int.min + var currentSum = 0 + + for x in nums { + currentSum = max(currentSum, 0) + x + ans = max(ans, currentSum) + } + + return ans + } +} +``` + diff --git "a/lcof/\351\235\242\350\257\225\351\242\23042. \350\277\236\347\273\255\345\255\220\346\225\260\347\273\204\347\232\204\346\234\200\345\244\247\345\222\214/Solution.swift" "b/lcof/\351\235\242\350\257\225\351\242\23042. \350\277\236\347\273\255\345\255\220\346\225\260\347\273\204\347\232\204\346\234\200\345\244\247\345\222\214/Solution.swift" new file mode 100644 index 0000000000000..4b584df17b7e0 --- /dev/null +++ "b/lcof/\351\235\242\350\257\225\351\242\23042. \350\277\236\347\273\255\345\255\220\346\225\260\347\273\204\347\232\204\346\234\200\345\244\247\345\222\214/Solution.swift" @@ -0,0 +1,13 @@ +class Solution { + func maxSubArray(_ nums: [Int]) -> Int { + var ans = Int.min + var currentSum = 0 + + for x in nums { + currentSum = max(currentSum, 0) + x + ans = max(ans, currentSum) + } + + return ans + } +} \ No newline at end of file