목록전체 글 (95)
IT_World
종합설계 프로젝트에서, 체크박스의 상태관리 및 체크박스 전부 체크 시 버튼을 활성화하는 부분을 구현하는데 애를 먹었다. 여러 방법이 있지만, useState를 활용하여 상태관리를 하는 방법을 남겨보고자 한다. 체크박스가 하나라도 선택되지 않은 상태: 확인 버튼 비활성 체크박스 전부 선택시 안내문구 사라짐 및 버튼 활성화 const SignupContents = ({ history }) => { const [checkedButtons, setCheckedButtons] = useState([]); const changeHandler = (checked, id) => { if (checked) { setCheckedButtons([...checkedButtons, id]); console.log(체크); }..
Solution 1 :최단거리 경우의수 class Solution: def uniquePaths(self, m: int, n: int) -> int: paths = [[0]*m for _ in range(n)] paths[0][0] = 1 for i in range(n): for j in range(m): if i==0 and j ==0 : continue paths[i][j] += paths[i-1][j] if i>0 else 0 paths[i][j] += paths[i][j-1] if j>0 else 0 return paths[i][j] Solution 2: 순열을 이용한 방법 같은 것 p개 q개 r개 있는 n개의 것을 순서를 생각하며 나열하는 경우의 수는 n! /(p! * q! * n!) (이렇게는..
def inorderTraversal(self, root: TreeNode) -> List[int]: stack = [root] res = [] while stack: node = stack.pop() if node: stack.append(node.right) stack.append(node) stack.append(node.left) else: if stack: node = stack.pop() res.append(node.val)
class Solution: def deleteDuplicates(self, head: Optional[ListNode]) -> Optional[ListNode]: dta = ListNode(0) dta.next = head dataset = set() while head and head.next: dataset.add(head.val) while head.next and head.next.val in dataset : head.next = head.next.next head = head.next return dta.next
class Solution: def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None: """ Do not return anything, modify nums1 in-place instead. """ del nums1[m:] nums1 += nums2[0:n] nums1.sort()
class Solution: def climbStairs(self, n: int) -> int: if n < 3: return n else : return self.climbStairs(n-1) + self._climbStairs(n-2) def _climStairs(self, n: int): if n not in self.cache.keys() : self.cache[n] = self.climbStairs(n) return self.cache[n]
class Solution: def combinationSum(self, candidates: List[int], target: int) -> List[List[int]]: result = [] def dfs(cansum,index,path): if cansum < 0 : return if cansum == 0 : result.append(path) return for i in range(index,len(candidates)): dfs(cansum - candidates[i],i, path + [candidates[i]]) dfs(target, 0, []) return result