Programmers / 2단계 / 미로 탈출 / python
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/159993  코드from collections import dequedef bfs(start, end, maps): dy = [0, 1, -1, 0] dx = [1, 0, 0, -1] n = len(maps) m = len(maps[0]) visited = [[False] * m for _ in range(n)] q = deque() for i in range(n): for j in range(m): if maps[i][j] == start: q.append((..
Programmers / 3단계 / 호텔 대실 / python
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/155651 코드from heapq import heappop, heappushdef solution(book_time): answer = 1 for i in range(len(book_time)): book_time[i][0] = int(book_time[i][0].split(':')[0])*60 + int(book_time[i][0].split(':')[1]) book_time[i][1] = int(book_time[i][1].split(':')[0])*60 + int(book_time[i][1].split(':')[1]) +10 book_time.s..
Programmers / 2단계 / 시소 짝꿍 / python
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/152996 코드from collections import Counterdef solution(weights): answer = 0 times = (3/4, 2/3, 1/2) count_dict = Counter(weights) for key, value in count_dict.items(): if value > 1: answer += value * (value - 1) / 2 # weights 안에 중복 없애기 weights = list(set(weights)) # 같은 무게가 아닐 경우 for i in we..
Programmers / 3단계 / 마법의 엘리베이터 / python
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/148653  코드def solution(storey): answer = 0 while storey > 0: len_storey = len(str(storey)) num1 = abs(storey - 10 ** len_storey) num2 = abs(storey - 10 ** (len_storey - 1)) storey = min(num1, num2) answer += 1 return answer 현재 층의 자리수 단위로 이동한다. 만약 16인 경우 두 자리 수이므로 10 ** 2 = 100 또는 10 ** (2 -..
Programmers / 2단계 / 괄호 변환 / python / 2020 KAKAO BLIND RECRUITMENT
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/60058  코드def check(s): stack = [] for i in s: if i == '(': stack.append(i) else: if len(stack) == 0: return False stack.pop() return Truedef divide(s): left, right = 0,0 for i in range(len(s)): if s[i] == '(': left += 1 else: r..
Programmers / 3단계 / 스티커 모으기(2) / python
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/12971  나의 풀이 (테스트 실패)def solution(sticker): num1 = 0 num2 = 0 maxN = 0 if len(sticker) == 1: return "".join(sticker) if len(sticker) % 2 == 1: for i in range(0, len(sticker)-1, 2): num1 += sticker[i] else: for i in range(0, len(sticker), 2): num1 += sticker[i] for ..
Programmers / 3단계 / 불량 사용자 / python / 2019 카카오 개발자 겨울 인턴십
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/64064  모범 답안from itertools import productdef check(str1, str2): if len(str1) != len(str2): return False for i in range(len(str1)): if str1[i] == "*": continue if str1[i] != str2[i]: return False return Truedef solution(user_id, banned_id): answer = set() result = [[] for i in range..
Programmers / 3단계 / 숫자 게임 / python
·
코딩테스트/programmers (python)
https://school.programmers.co.kr/learn/courses/30/lessons/12987  코드 (테스트 실패)def solution(A, B): answer = 0 A.sort(reverse=True) B.sort(reverse=True) for i in range(len(A)): if A[i]   재시도 (통과)def solution(A, B): answer = 0 A.sort(reverse=True) B.sort(reverse=True) i = 0 for a in A: if a  문제에서 A팀과 B팀의 점수를 내림차순으로 정렬해 비교하였으나, 같은 인덱스끼리만 비교하여 실패하였다.예를 들어A팀의 점수가..