aboutsummaryrefslogtreecommitdiff
path: root/challenge-061/lubos-kolouch/python/ch-1.py
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-061/lubos-kolouch/python/ch-1.py')
-rw-r--r--challenge-061/lubos-kolouch/python/ch-1.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/challenge-061/lubos-kolouch/python/ch-1.py b/challenge-061/lubos-kolouch/python/ch-1.py
new file mode 100644
index 0000000000..ead27c91bf
--- /dev/null
+++ b/challenge-061/lubos-kolouch/python/ch-1.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+from typing import List
+
+
+def max_product_sublist(nums: List[int]) -> int:
+ max_product = nums[0]
+ min_product = nums[0]
+ result = nums[0]
+
+ for i in range(1, len(nums)):
+ if nums[i] < 0:
+ max_product, min_product = min_product, max_product
+
+ max_product = max(nums[i], nums[i] * max_product)
+ min_product = min(nums[i], nums[i] * min_product)
+
+ result = max(result, max_product)
+
+ return result
+
+
+input_nums = [2, 5, -1, 3]
+max_product = max_product_sublist(input_nums)
+print(f"Maximum product: {max_product}") # Output: Maximum product: 10