Problem Solving/LeetCode
Today's Challenge
fabichoi
2022. 9. 21. 23:45
https://leetcode.com/problems/sum-of-even-numbers-after-queries/
Sum of Even Numbers After Queries - 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
문제가 좀 쉬워 보여서 풀어보려고 접근했다가 40분 날림 =_=..
결국 솔루션 참고.
내가 풀려고 했던 방법은 flags라는 list를 하나 만들어서 현재 해당 index의 값이 짝수 인지 홀수 인지를 확인하고 더하기/빼기를 해주는 형태였는데, 로직이 중간에 제대로 안만들어진 것 같음.
솔루션에서는 일단 짝수면 기존의 누적합에서 빼주고, 해당 인덱스의 값을 업데이트 한 후 또 짝수면 다시 더해주는 방식으로 구현함.
class Solution:
def sumEvenAfterQueries(self, nums: List[int], queries: List[List[int]]) -> List[int]:
s = sum(num for num in nums if num % 2 == 0)
res = []
for n, k in queries:
if nums[k] % 2 == 0:
s -= nums[k]
nums[k] += n
if nums[k] % 2 == 0:
s += nums[k]
res.append(s)
return res
반응형