Difficulty: MEDIUM
Categories: λ°°μ΄/λ¬Έμμ΄λμ κ³νλ² (DP)
class Solution {
public int maxSubArray(int[] nums) {
int maxSum = nums[0], currentSum = 0;
for (int num : nums) {
if (currentSum < 0) currentSum = 0;
currentSum += num;
maxSum = Math.max(maxSum, currentSum);
}
return maxSum;
}
}
[μλ νμ΄ Β· gpt-4.1-mini] νμ¬ μμΉκΉμ§μ μ΅λ λΆλΆν©μ μ μ₯νλ©° μ§ννλ€. μ΄μ κΉμ§μ μ΅λ λΆλΆν©μ΄ μμλ©΄ λ²λ¦¬κ³ νμ¬ μμλΆν° μλ‘ μμνλ κ²μ΄ μ΅λμ΄λ―λ‘, dp λ°°μ΄ μμ΄ λ³μ λ κ°λ‘ μ΅λκ°μ κ°±μ νλ€. μκ° O(n) Β· κ³΅κ° O(1) μ£Όμ: λͺ¨λ μκ° μμμΌ λ μ΄κΈ° maxSum μ€μ κ³Ό currentSum μ΄κΈ°νμ μ£Όμν΄μΌ νλ€.