일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- LEVEL 2
- DP
- 동적계획법
- join
- Lv. 3
- 자바스크립트
- Dynamic Programming
- 파이썬
- Java
- Lv. 0
- 백준
- group by
- Baekjoon
- 프로그래머스
- dfs
- 너비 우선 탐색
- level 3
- softeer
- SQL 고득점 KIT
- javascript
- Python
- Lv. 1
- Lv. 2
- 소프티어
- programmers
- bfs
- 깊이 우선 탐색
- SQL
- 오블완
- 티스토리챌린지
- Today
- Total
목록Python (145)
몸과 마음이 건전한 SW 개발자

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/12929 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드def solution(n): if n == 1: return 1 dp = [0] * (n+1) dp[0] = 1 dp[1] = 1 dp[2] = 2 for i in range(3, n+1): for j in range(1, i+1): dp[i] += dp[j-1] * dp[i-j] answer = dp[-1] return answer풀이 방..

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/81303 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드def solution(n, k, cmd): sb = [] deletes = [] result = [1] * (n) up = [0] * (n) down = [0] * (n) for i in range(n): up[i] = i - 1 down[i] = i + 1 up[0] = -1 down[n-1] = -1 for c in cmd: if ..

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/12911 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드def solution(n): answer = 0 def binary(num): cnt = 0 while num > 0: cnt += num % 2 num //= 2 return cnt one = binary(n) numDict = {} for num in range(n+1, 1000065): cnt = binar..

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드def solution(people, limit): answer = 0 # 투 포인터로 가면 될듯 # 오름차순 정렬 시키고 왼쪽 오른쪽 인덱스로 나눔 # 왼쪽 사람과 오른쪽 사람을 더했는데 limit를 초과하면 오른쪽 사람은 혼자 타야됨 left = 0 right = len(people) - 1 people.sort() while (left limit): right..

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/86052 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드 1def solution(grid): answer = [] n = len(grid) m = len(grid[0]) dr = [-1, 0, 1, 0] # 상 우 하 좌 dc = [0, 1, 0, -1] visited = dict() for r in range(n): for c in range(m): for d in range(4): ..

https://school.programmers.co.kr/learn/courses/30/lessons/148653 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드answer = 72def solution(storey): def dfs(s, tot): global answer if answer 풀이 방법answer를 72로 둔 이유는 최악의 수가 99_999_999를 전부 9번씩 눌러서 9 * 8 = 72번 버튼을 누르는 것이다.경우의 수는 2개로 봤다.현재 가장 큰 자리수의 개수 만큼 누르기987인 경우 => 987 - 900 = 8710 ** 현재 자릿수에서 현..