일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- python 10989
- 백준 막대기
- 개발자 취업
- 코딩테스트 준비
- python 14503
- BFS
- boj 2309
- 스택
- 구현
- 큐
- softeer
- leetcode
- 백준 2309
- 백준 카드1
- 프로그래머스
- python 2309
- python 1259
- Python 20001
- BOJ
- 99항해
- Python
- 백준 팰린드롬수
- 백준
- python 10250
- 99클럽
- 파이썬
- 항해99
- til
- 일곱 난쟁이
- leetcode 2405
- Today
- Total
목록코딩테스트 준비 (40)
동까의 코딩
https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 그래프를 이용한 탐색 문제입니다. 그래프를 선언해 주고 해당 노드를 방문할 때마다 거리를 늘려주는 방법을 사용하여 저장하고 max값을 뽑아내줍니다. from collections import dequedef solution(n, edge): answer = 0 edge = sorted(edge) distance = [0] * (n + 1) queue = deque() ..
https://leetcode.com/problems/capacity-to-ship-packages-within-d-days/submissions/1284760441/ leetcode 문제사이트에 있는 수열 문제입니다. class Solution(object): def findDays(self, weights, D, capacity): weight_sum = 0 days = 1 for w in weights: weight_sum += w if weight_sum > capacity: days += 1 weight_sum = w return days > D ..
https://school.programmers.co.kr/learn/courses/30/lessons/43238 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 오늘의 문제는 이진탐색 문제입니다. 이진탐색에 대해서 알아보는 시간을 갖게 되었다.mid 값을 정해주고 left, right의 범위를 계속해서 좁혀주는 방법이다. def solution(n, times): answer = 0 left, right = 1, max(times) * n while left = n: break if p..
https://leetcode.com/problems/count-square-submatrices-with-all-ones/submissions/1282783267/ class Solution(object): def countSquares(self, matrix): if len(matrix) == 0 or len(matrix[0]) == 0: return 0 rows, cols = len(matrix), len(matrix[0]) dp = [[0 for _ in range(cols)] for _ in range(rows)] ans = 0 for i in range(rows): ..
leetcode 문제를 풀어 보았습니다. https://leetcode.com/problems/partition-array-for-maximum-sum/description/ class Solution: def maxSumAfterPartitioning(self, arr: List[int], k: int) -> int: n = len(arr) dp = [0] * (n + 1) for i in range(1, n + 1): max_val = float('-inf') for j in range(1, min(i, k) + 1): max_val = max(max_val, arr[i - j]) ..
https://leetcode.com/problems/count-sorted-vowel-strings/submissions/1280576421/ class Solution: f = {} def countVowelStrings(self, n): return self.nHr(5, n) def nHr(self, n, r): return self.fact(n+r-1) // self.fact(n-1) // self.fact(r) def fact(self, n): if n
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)..