반응형

파이썬 17

[LeetCode 리트코드] Find a Corresponding Node of a Binary Tree in a Clone of That Tree

문제 바이너리 트리 original이 주어진다. 그리고 그것의 레퍼런스 버전인 cloned가 주어진다. target노드가 head가 되는 cloned된 트리를 리턴하라. 언뜻 보면 되게 간단하다. 그냥 bfs로 돌면서 target과 value가 같은 노드가 있으면 리턴하면 된다. 예 추가사항 노드의 개수는 1개 이상 10^4개 이하 target 노드는 무조건 original 중에 있음 나의 솔루션 # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None def bfs(node: TreeNode, val): if node.va..

[LeetCode 리트코드] Kth Missing Positive Number

문제 리스트로 주어지는 arr를 제외하고 없는 k번째 숫자를 구하여라. (모든 수는 자연수) 예 input : arr = [1, 2, 5, 6, 7, 10, 20], k = 5 output : 11 1번째 missing number : 3 2번째 missing number : 4 3번째 missing number : 8 4번째 missing number : 9 5번째 missing number : 11 추가사항 arr의 길이는 1000. arr의 요소는 1이상 1000이하, k는 1이상 1000이하. arr는 오름차순 정렬 나의 솔루션 class Solution: def findKthPositive(self, arr: List[int], k: int) -> int: arrIdx = 0 arrLen = l..

Day2 | 간단한 계산기

뼈대코드 아래 다운받기 혹은 복사하여 붙여넣기 ''' 계산기 1. 입력값(input_num)은 숫자(0 - 9)와 사칙연산자(+, -, *, / )이고, 코드에서 주어집니다. 2. 각 숫지/문자는 띄어쓰기로 구분됩니다. (예) 1 + 2 * 5 - 8 3. 사칙연산의 규칙에 따라 곱셈과 나눗셈을 먼저 계산합니다. 4. 정답을 print 하면 됩니다. 5. 단, 0으로 나누는 경우는 없습니다. * 심화 * 1. 숫자가 10 이상인 수도 입력값으로 받을 수 있게 업그레이드 하세요 2. 숫자가 음수일 수 있도록 업그레이드 하세요 ''' input_num = '3 + 5 * 7 - 9 / 3' #심화1 #input_num = '24 * 4 + 1000 / 25 - 3' #심화2 #input_num = '93 +..

Day1 | 가위바위보게임

규칙 # 가위바위보 게임 # 1 : 가위 # 2 : 바위 # 3 : 보 # 컴퓨터는 랜덤으로 가위바위보를 냅니다. # 사용자는 키보드로 1, 2, 3 중 하나를 입력하여 냅니다. # 이기면 1점을 획득합니다. # 먼저 3점을 획득한 사람이 승리합니다. 예상결과 뼈대코드 ''' 가위바위보 게임 1 : 가위 2 : 바위 3 : 보 컴퓨터는 랜덤으로 가위바위보를 냅니다. 사용자는 키보드로 1, 2, 3 중 하나를 입력하여 냅니다. 이기면 1점을 획득합니다. 먼저 3점을 획득한 사람이 승리합니다. ''' name = input('이름을 입력하세요 : ') print('게임을 시작합니다. (가위 : 1, 바위 : 2, 보 : 3') user_score = 0 #사용자 점수 computer_score = 0 #컴퓨..

[프로그래머스] 도둑질 (DP, 파이썬)

링크 : https://programmers.co.kr/learn/courses/30/lessons/42897 def dp(visited, money, n): answer = 0 for i in range(n, len(money)): visited[i] = max(visited[i-1], visited[i-2]+money[i]) #첫번째 집 간 경우, 마지막 집도 갔다면 빼주어야함 if visited[0] != 0 : if visited[-1] == visited[-2]: return visited[-1] else: return visited[-2] else: return visited[-1] def solution(money): answer = 0 visited = [0 for x in range(le..

반응형