본문 바로가기

전체 글29

[Easy][Python] Range Sum of BST Binary search tree라는 root와 low, high range가 주어졌을 때 [low, high] 안에 포함되는 모든 노드 값의 합을 return 한다 # 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 class Solution: def rangeSumBST(self, root: Optional[TreeNode], low: int, high: int) -> int: if root is None: return 0 elif root.val > high: .. 2022. 10. 28.
[Easy][Python] Root Equals Sum of Children root, left child, right child를 가진 binary tree가 있다고 가정할때 root의 value가 각 children values의 합과 같으면 true, 그렇지 않으면 false를 return한다. # 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 class Solution: def checkTree(self, root: Optional[TreeNode]) -> bool: return root.val == root.left.val+root.. 2022. 10. 25.
[Easy][Python] Count of Matches in Tournament n개의 team이 있다고 했을 때 아래와 같은 strange rules를 따른다: 만약 n이 even일 경우 n/2 matches가 있고 n/2 teams가 다음 라운드로 진출한다. 만약 n이 odd일 경우 (n-1)/2 matches가 있고 (n-1)/2+1 teams가 다음 라운드로 진출한다. 최종 winner team이 결정될 때까지 토너먼트에서 이루어진 match숫자를 return한다. class Solution: def numberOfMatches(self, n: int) -> int: numMatch = 0; while (n!=1): if n%2 == 0: numMatch += n//2 n = n//2 else: numMatch += (n-1)//2 n = (n-1)//2+1 return nu.. 2022. 10. 23.
[Easy][Python] Defanging an IP Address string형태의 IP address가 주어졌을 때 defanged version을 return한다. (defanged version => replace very "." with "[.]") class Solution: def defangIPaddr(self, address: str) -> str: return '[.]'.join(address.split('.')) 2022. 10. 23.