From 40a4785d665415b8bdcbe1386891f17c28375bff Mon Sep 17 00:00:00 2001 From: mhrooz Date: Sun, 2 Jun 2024 21:24:18 +0200 Subject: [PATCH] not understand the code --- 918-240623/main.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 918-240623/main.cpp diff --git a/918-240623/main.cpp b/918-240623/main.cpp new file mode 100644 index 0000000..52e13de --- /dev/null +++ b/918-240623/main.cpp @@ -0,0 +1,14 @@ +class Solution { +public: + int maxSubarraySumCircular(vector& A) { + int sum = 0, mn = INT_MAX, mx = INT_MIN, curMax = 0, curMin = 0; + for (int num : A) { + curMin = min(curMin + num, num); + mn = min(mn, curMin); + curMax = max(curMax + num, num); + mx = max(mx, curMax); + sum += num; + } + return (sum - mn == 0) ? mx : max(mx, sum - mn); + } +};