일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준 #이거다시풀기
- 프로그래머스 #NULL 처리하기
- 백준 #백준2217 #백준로프 #python
- 프로그래머스 #python #코딩테스트 #코테공부 #알고리즘 #dict
- 카카오 코테
- 그리디알고리즘 #그리디 #백준 #우선순위큐 #최소힙 #최대힙 #알고리즘 #코딩테스트 #python
- 백준 #백준알고리즘 #알고리즘 #코딩테스트 #코딩테스트준비 #코테준비 #백준2110 #python #문제풀이
- 동
- 카카오 #프로그래머스 #python #코딩테스트 #오픈채팅방
- 프로그래머스 #sql #mysql #코딩테스트
- 프로그래머스 #python #2021카카오 #카카오코테 #카카오인턴쉽
- 프로그래머스 #네트워크 #c++ #코딩테스트 #코테 #코테준비 #dfs
- 프로그래머스 #c++ #코딩테스트
- Today
- Total
목록알고리즘 문제 풀이/프로그래머스 (83)
say repository
https://programmers.co.kr/learn/courses/30/lessons/42587# 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 출처 : 프로그래머스 from collections import deque def solution(priorities, location): answer = 0 q = deque([v,i] for i,v in enumerate(priorities)) print(q) while q: tmp = q.popleft() # q가 남아 있어야 max 값이 있음. if q a..
https://programmers.co.kr/learn/courses/30/lessons/12911 출처 : 프로그래머스 코딩테스트 연습 - 다음 큰 숫자 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니 programmers.co.kr def solution(n): answer = 0 print(bin(n)) cnt = bin(n).count('1') for i in range(n+1,1000001): if bin(i).count('1') == cnt: answer = i break return answer 풀이 bin() 함수로 10진수를..
https://programmers.co.kr/learn/courses/30/lessons/12899 출처 : 프로그래머스 코딩테스트 연습 - 124 나라의 숫자 programmers.co.kr def solution(n): answer = '' while n: if n%3 != 0: answer += str(n%3) n //= 3 else: # 3의 배수면 일의 자리는 4 answer += '4' n = n//3 -1 print(n) return answer[::-1] 풀이 3진법으로 변환하는 문제랑 똑같이 생각하면 된다. 하지만, 3으로 나눠떨어질 때만 일의 자리수가 4로 된다.. 또한, 나눠지니까 -1을 해줘야한다.
https://programmers.co.kr/learn/courses/30/lessons/12949 출처 : 프로그래머스 코딩테스트 연습 - 행렬의 곱셈 [[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]] programmers.co.kr def solution(arr1, arr2): answer = [[0 for _ in range(len(arr2[0]))] for _ in range(len(arr1))] for i in range(len(arr1)): # 0, 1, 2 for j in range(len(arr2[0])): # 0, 1 for k in ran..
https://programmers.co.kr/learn/courses/30/lessons/42747 코딩테스트 연습 - H-Index H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표 programmers.co.kr 출처 : 프로그래머스 def solution(citations): citations.sort(reverse = True) print(citations) for idx, cita in enumerate(citations): print(idx, cita) if idx >= cita: return idx return len(citati..
https://programmers.co.kr/learn/courses/30/lessons/1844 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,1],[0,0,0,0,1]] 11 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,0],[0,0,0,0,1]] -1 programmers.co.kr from collections import deque def solution(maps): dx = [-1, 0, 1, 0] dy = [0, -1, 0, 1] n = len(maps) m = len(maps[0]) visited = [[-1]*m for _ in range(n)] q = deque() q.app..
https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 출처 : 프로그래머스 def solution(s): stack = [] for i in s: if len(stack) == 0: stack.append(i) elif stack[-1] == i: stack.pop() else: stack.append(i) if len(stack) == 0: return 1 else: return 0 풀이 문자열 s를..