일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 알고리즘
- leetcode
- 혁펜하임
- 프로그래머스
- 코딩테스트준비
- 백준
- 큐
- 개발자 취업
- 스택
- easy 딥러닝
- boj 2309
- BOJ
- 해시
- 개발자취업
- 항해99
- 활성화 함수
- Python
- 99항해
- softeer
- 백준 2309
- 코딩테스트 준비
- 기능개발
- 99클럽
- til
- dfs
- BFS
- 파이썬
- python 2309
- 딥러닝
- 구현
- Today
- Total
목록코딩테스트 준비 (42)
동까의 코딩
https://leetcode.com/problems/all-possible-full-binary-trees/submissions/1279496386/ class Solution: def allPossibleFBT(self, n: int) -> List[Optional[TreeNode]]: dp = {} dp[1] = [TreeNode(0)] def dfs(cnt): ans = [] if cnt in dp: return dp[cnt] for i in range(1, cnt, 2): left_trees = dfs(i) righ..
https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 그리디 문제를 오늘의 문제로 풀어보았습니다. sorted를 reverse를 해줘서 최대값과 최솟값의 합이 limit를 넘지 않으면 빼주는 방식을 사용한다. from collections import dequedef solution(people, limit): answer = 0 queue = deque(sorted(people, reverse=True)) while len(queue)..
오늘의 문제는 그리디 문제가 나왔습니다. 그리디에 대해 개념을 찾아보고 문제를 풀이하였고, 아직 제대로 설명할정도로 이해하진 못해서 다시 공부할 예정입니다. https://school.programmers.co.kr/learn/courses/30/lessons/42860 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr def solution(name): answer = 0 min_move = len(name) - 1 for i, char in enumerate(name): answer += min(ord(char) - ord..
Leetcode에서 그래프 문제를 풀어보았습니다. https://leetcode.com/problems/reverse-odd-levels-of-binary-tree/description/ class Solution: def reverseOddLevels(self, root: Optional[TreeNode]) -> Optional[TreeNode]: nodes = [] level = [root] level_idx = 0 while level: if level_idx % 2 == 0: nodes.append(level) else: nodes.append(le..
leetcode에서 그래프문제를 풀어보았습니다. 아직도 leetcode 문제풀이는 너무 어렵습니다.. https://leetcode.com/problems/all-paths-from-source-to-target/description/ class Solution: def __init__(self): self.paths = [] self.graph = {} def buildGraph(self, graph): for i, neighbors in enumerate(graph): self.graph[i] = neighbors def setPaths(self, src, dest, path): if src == d..
leetcode의 dfs 문제를 풀어보았습니다. https://leetcode.com/problems/deepest-leaves-sum/submissions/1273992637/ 아직은 클래스로 구현하는것이 어렵지만 여러 문제를 많이 풀어봐야 할 것 같습니다. from collections import defaultdictclass Solution: def deepestLeavesSum(self, root: Optional[TreeNode]) -> int: nodelevel = defaultdict(list) def dfs(currentNode : TreeNode, level: int): if not nodelevel[level]: ..

프로그래머스에서 DFS/BFS 문제 중 하나인 게임 맵 최단거리 문제를 풀어보았습니다. https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이방법0,0에서부터 시작해서 n-1, m-1 지점까지 가야하고 만약에 도달하지 못한다면 -1을 도달한다면 빠르게 도착하는 갯수를 출력하는 문제입니다.0,0을 queue에 넣어주고 bfs를 이용해서 구현하였고, 먼저 n-1, m-1 지점에 도착한다면 끝내주는 방법을 사용하였습니다.n과 m에 대해서는 따로 주어지지 ..

오늘은 문제 유형으로 BFS/DFS의 문제를 풀어보았습니다. 프로그래머스에서 타겟 넘버 문제를 풀이하였습니다. https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr BFS로 풀이하였고, 계속해서 지난 수를 저장해주며 +, - 값을 갱신하여 마지막에 타겟값과 같은 것을 빼주었습니다. def solution(numbers, target): answer = 0 sum_num = [0] for num in numbers: ..