Coding Test76 [LeetCode] 26. Remove Duplicates from Sorted Array I. DescriptionII. Codeclass Solution: def removeDuplicates(self, nums: List[int]) -> int: result = [] tmp = None for num in nums: if tmp == None: result.append(num) else: if num != tmp: result.append(num) tmp = num nums[:] = result return len(result)문제가 간단해서 코드만.. 2025. 3. 17. [LeetCode] 27. Remove Element I. DescriptionII. Codeclass Solution: def removeElement(self, nums: List[int], val: int) -> int: n = len(nums) result = [] for i in range(n): if nums[i] != val: result.append(nums[i]) len_result = len(result) for i in range(len_result): nums[i] = result[i] for i in range(len_result, n): .. 2025. 3. 17. [LeetCode] 88. Merge Sorted Array I. DescriptionII. Codeclass Solution: def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None: """ Do not return anything, modify nums1 in-place instead. """ i = 0 j = 0 result = [] while i III. Explanation문제 해결 방법 설명이 문제에서는 두 개의 정렬된 배열 nums1과 nums2를 병합해야 합니다. 가장 단순한 접근 방식은 다음과 같습니다.nums1[:m] + nums2[:n]nums1.sort()하.. 2025. 3. 16. [LeetCode] 2944. Minimum Number of Coins for Fruits I. DescriptionII. Codeclass Solution: def minimumCoins(self, prices: List[int]) -> int: # 변수 초기화 n = len(prices) dp = [0] * (n+1) # dp[i]: i번째 날까지의 최소 가격 q = deque() # 다음 dp 계산 시 고려해야 할 인덱스 for i in range(n): # 해당 dp가 free로 받을 수 있는 경우를 벗어나면 고려할 인덱스 리스트에서 삭제 while q and (q[0] + 1) * 2 = dp[i] + prices[i]: q.pop() .. 2025. 1. 27. [LeetCode] 1008. Construct Binary Search Tree from Preorder Traversal I. DescriptionII. Code# Definition for a binary tree node.class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right # # __repr__ 메서드 추가 # def __repr__(self): # return f"TreeNode(val={self.val})" class Solution: def bstFromPreorder(self, preorder: List[int]) -> Optional[TreeNode]: .. 2025. 1. 26. [LeetCode] 1006. Clumsy Factorial I. DescriptionII. Codeclass Solution: def clumsy(self, n: int) -> int: result = 0 add_or_sub = 1 for i in range(n, -1, -4): if i == 3: return (result + add_or_sub * 6) if i == 2: return (result + add_or_sub * 2) if i == 1: return (result + add_or_sub * 1) if i == 0: ret.. 2025. 1. 26. [LeetCode] 1003. Check If Word Is Valid After Substitutions I. DescriptionII. Codeclass Solution: def isValid(self, s: str) -> bool: if 'abc' in s: return self.isValid(s.replace('abc', '')) if s == '': return True return False같은 방식을 계속 반복해야 하므로 재귀함수를 사용했다. 2025. 1. 26. [LeetCode] 1441. Build an Array with Stack Operations I. DescriptionII. Codeclass Solution: def buildArray(self, target: List[int], n: int) -> List[str]: # 초기화 output_list = [] checked = 1 for i in range(1, n+1): if i in target: while checked != i: output_list.append("Push") output_list.append("Pop") checked += 1 .. 2025. 1. 26. 이전 1 2 3 4 ··· 10 다음