일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 딕셔너리
- 스택
- level1
- programmers
- MYSQL
- 수학
- 파이썬
- 가상메모리
- 가상메모리 관리
- 브루트포스
- BOJ
- 운영체제
- level3
- 그리디
- 재귀
- 백준
- BFS
- 힙
- 코딩테스트
- dfs
- 구현
- 프로그래머스
- DP
- dict
- 다이나믹 프로그래밍
- level0
- python
- 다익스트라
- N과M
- level2
- Today
- Total
목록코테/프로그래머스 (86)
동캄의 코딩도장
https://programmers.co.kr/learn/courses/30/lessons/17678 코딩테스트 연습 - [1차] 셔틀버스 10 60 45 ["23:59","23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59"] "18:00" programmers.co.kr # 프로그래머스 [1차] 셔틀버스 from collections import deque def solution(n, t, m, timetable): answer = '' bus_time = [] bus_cnt = [[] for _ in range(n)]..
https://programmers.co.kr/learn/courses/30/lessons/42895 코딩테스트 연습 - N으로 표현 programmers.co.kr # 프로그래머스 N으로 표현 실패 def solution(N, number): answer = 0 dp = [10000]*(1000000) for i in range(1, 7): s = str(N)*i dp[int(s)] = i for i in range(2, 100000): if i > N: dp[i] = min(dp[i], dp[i*N]+1, dp[i+N] + 1, dp[i-N]+1,) else: dp[i] = min(dp[i], dp[i*N]+1, dp[i+N]+1) answer = dp[number] if answer >= 8: an..
# 프로그래머스 하노이의 탑 def hanoi(start, mid, end, pillar): if start: if start[1:]: return hanoi(start[1:], mid, end, [pillar[0], pillar[2], pillar[1]])+[[pillar[0], pillar[2]]]+hanoi(start[1:], mid, end, [pillar[1], pillar[0], pillar[2]]) else: return [[pillar[0], pillar[2]]] def solution(n): answer = [] start = [i for i in range(n, 0, -1)] mid = [] end = [] answer = hanoi(start, mid, end, [1, 2, 3]) r..
https://programmers.co.kr/learn/courses/30/lessons/12936 코딩테스트 연습 - 줄 서는 방법 n명의 사람이 일렬로 줄을 서고 있습니다. n명의 사람들에게는 각각 1번부터 n번까지 번호가 매겨져 있습니다. n명이 사람을 줄을 서는 방법은 여러가지 방법이 있습니다. 예를 들어서 3명의 사람 programmers.co.kr # 프로그래머스 줄 서는 방법 import math def solution(n, k): answer = [] k -= 1 lst = [i for i in range(1, n+1)] while n > 1: p = math.perm(n-1) answer.append(lst.pop(int(k//p))) k = k % p n -= 1 for val in ..
https://programmers.co.kr/learn/courses/30/lessons/12938 코딩테스트 연습 - 최고의 집합 자연수 n 개로 이루어진 중복 집합(multi set, 편의상 이후에는 "집합"으로 통칭) 중에 다음 두 조건을 만족하는 집합을 최고의 집합이라고 합니다. 각 원소의 합이 S가 되는 수의 집합 위 조건을 만 programmers.co.kr # 프로그래머스 최고의 집합 def solution(n, s): answer = [] if n > s: answer.append(-1) else: stan = s//n left = s % n for i in range(n-left): answer.append(stan) for i in range(left): answer.append(1+..
https://programmers.co.kr/learn/courses/30/lessons/12914 코딩테스트 연습 - 멀리 뛰기 효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는 (1칸, 1칸, 1칸, 1칸) (1칸, 2칸, 1칸) (1칸, 1칸, 2칸) (2칸, 1칸, 1칸) (2칸, 2 programmers.co.kr # 프로그래머스 멀리 뛰기 def solution(n): answer = 0 dp = [0]*(n+1) dp[0] = 1 dp[1] = 1 for i in range(2, n+1): dp[i] = (dp[i-1]+dp[i-2]) % 1234567 answer = dp[n] return answer 간단한 ..