일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- 수학
- MYSQL
- 딕셔너리
- 백준
- dfs
- 코딩테스트
- 스택
- python
- 운영체제
- 브루트포스
- DP
- 구현
- 가상메모리 관리
- 에라스토테네스의 체
- level3
- 재귀
- level1
- BFS
- programmers
- 힙
- 가상메모리
- level0
- 다이나믹 프로그래밍
- 그리디
- BOJ
- 다익스트라
- N과M
- 파이썬
- level2
- Today
- Total
목록코테 (348)
동캄의 코딩도장
https://school.programmers.co.kr/learn/courses/30/lessons/131704def solution(order): answer = 0 # 최종 결과를 저장할 변수 (몇 개를 올바르게 꺼냈는지) convey = [i for i in range(len(order), 0, -1)] # 컨베이어 벨트에 놓인 상자들 (큰 번호부터 1까지 역순) sub_convey_ = [] # 보조 벨트 (임시로 옮긴 상자들) # 주문 순서(order)에 따라 상자를 처리 for i in range(len(order)): if convey and order[i] >= convey[-1]: # 메인 벨트에서 상자를 꺼내야 ..
https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr def solution(number, limit, power): answer = 0 # 최종 결과를 저장할 변수 # 1부터 number까지 반복 for num in range(1, number + 1): temp = 0 # num의 약수 개수를 세기 위한 변수 # 1부터 sqrt(num)까지 약수를 찾는다 for div in range(1, int(num**0.5) + 1): ..
https://school.programmers.co.kr/learn/courses/30/lessons/159994def solution(cards1, cards2, goal): answer = '' # 최종 답을 저장할 변수 ('Yes' 또는 'No') i = 0 # cards1 리스트의 현재 인덱스 j = 0 # cards2 리스트의 현재 인덱스 while True: # 계속 반복하면서 goal을 순서대로 만들어나간다 # cards1에서 다음 단어가 goal의 현재 위치 단어와 일치하면 if i 포인터를 각각 하나씩 써서 해결하면 된다.
https://www.acmicpc.net/problem/1963 import sysfrom collections import deque# **에라토스테네스의 체를 이용한 소수 판별**sosu = [True for _ in range(10000)] # 0부터 9999까지 모든 숫자를 소수(True)로 초기화sosu[0] = False # 0은 소수가 아님sosu[1] = False # 1도 소수가 아님# 소수 판별을 위한 에라토스테네스의 체 실행for i in range(2, 10000): if sosu[i]: # 현재 숫자가 소수라면 for k in range(i * 2, 10000, i): # 그 배수들은 모두 소수가 아님 sosu[k] = False# ..
https://www.acmicpc.net/problem/17071 어려웠다. 동생과 수빈의 도착 시간 차이가 짝수만큼 차이나면 결국 만날 수 있기에, 특정지점에 홀수 도착시간과 짝수도착시간을 분리하여 계산하는것이 핵심이었다.from collections import deque# 수빈이(N)와 동생(K) 위치 입력N, K = map(int, input().split())def search(subin, sister): cnt = 0 # 시간 (이동 횟수) q = deque() q.append((subin, sister, cnt, 2)) # (수빈 위치, 동생 위치, 시간, 짝/홀 여부) # 방문 여부 및 방문 시간 저장 배열 # visited[i] = [짝수 방문 여부..
https://www.acmicpc.net/problem/1038import mathdef search_first_num(cnt, n): """N번째 감소하는 수의 추가할 숫자와 자릿수를 찾는 함수""" while True: for i in range(n, 10): # n 이상의 숫자에서 선택 (불필요한 반복 제거) cnt += math.comb(i, n) # 조합 개수를 누적 if cnt > N: # 목표 숫자 초과 시 종료 cnt -= math.comb(i, n) # 초과된 값 되돌리기 return i, n, cnt # 현재 숫자, 자리수, 누적 개수 반환 n +=..