하루에 1문제씩 풀기.
한 문제당 30분씩은 고민하기.
왜 그렇게 풀었는지 공유하기.
하루라도 놓친다면 벌금은 1,000원
백준 플래티넘, 프로그래머스 4단계, 개발자 탈퇴 시 모임 탈퇴 가능
[3코1파] 2023.01.04~ (168차)
[4코1파] 2023.01.13~ (160일차)
[1스4코1파] 2023.04.12~ (71일차)
[1스4코2파] 2023.05.03 ~ (50일차)
2023.06.18 [168일차]
LeetCode Patterns
303. Range Sum Query - Immutable
https://leetcode.com/problems/range-sum-query-immutable/description/
https://leetcode.com/problems/range-sum-query-immutable/description/
문제 설명
원소가 담긴 list인 nums가 주어지고 left, right가 담긴 리스트가 주어졌을 때
nums의 left 인덱스부터 right 인덱스까지의 합을 구해서 return 함!
문제 풀이 방법
easy 한 dp 문제이지만
저렇게 클래스로 구현해서 sumRange 함수로 불러오는 건 프로그래머스와 다른걸?
뭐 일단 nums의 길이만큼의 numsList 를 만들고,
nums를 돌면서 nums의 원소들을 더한 값을 numsList에 넣는다.
각 원소들을 더한 numList에 있는 걸 right+1, left 인덱스에 있는걸로 빼줌
내 코드
class NumArray:
def __init__(self, nums: List[int]):
self.sumList = [0]*(len(nums)+1)
for i in range(len(nums)):
self.sumList[i+1] = self.sumList[i] + nums[i]
def sumRange(self, left: int, right: int) -> int:
return self.sumList[right+1] - self.sumList[left]
증빙
여담
-끝-