-
[leetcode - C] Maximum SubarrayProblem Solving 2022. 7. 16. 13:47
문제 설명
https://leetcode.com/problems/maximum-subarray/
Maximum Subarray - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
- 난이도 - Medium
배열에서 연속된 수들 중 합이 가장 큰 조합을 찾는 문제
관련 개념
배열
접근 방법
패턴을 찾으면 구현은 어렵지 않은 문제.
배열의 요소를 앞에서부터 탐색하면서 현재 탐색하는 수를 Maximum Subarray에 포함할지 말지가 관건
이므로, (직전까지의 누적합+현재 수) 와 (현재 수)를 비교해서 둘 중 큰 수가 새로운 누적합이 됨.
답안 코드
Runtime: 174 ms (39.15%)
Memory Usage: 12.2 MB (75.56%)int maxSubArray(int* nums, int numsSize){ int sum=-10000; int max=-10000; for(int i=0; i<numsSize; i++){ sum = sum+nums[i] < nums[i] ? nums[i] : sum + nums[i]; max = max < sum ? sum : max; } return max; }
'Problem Solving' 카테고리의 다른 글
[leetcode - Python] Roman to Integer (0) 2022.07.19 [leetcode - python] Majority Element (0) 2022.07.18 [leetcode] 204. Count Primes - C (0) 2022.04.14 [leetcode] 172. Factorial Trailing Zeroes - C (0) 2022.03.12 [leetcode] 70. Climbing Stairs - C (0) 2022.03.05