Python(38)
-
[2021 카카오 코딩테스트] 메뉴 리뉴얼 - 파이썬
0. 자세한 설명은 YouTube 영상으로 1-1. Hash를 활용한 Solution from itertools import combinations def solution(orders, course): answer = [] # 1. 각 order 정렬 for i in range(len(orders)): orders[i] = "".join(sorted(orders[i])) print(orders[i]) # 2. course_len 마다 조합 생성 for course_len in course: hash = {} max = 0 for order in orders: # 각 Order를 기준으로 courseLength 만큼의 조합 만들기 for comb in combinations(order, course_len..
2021.12.27 -
[프로그래머스] 체육복 문제 풀이(탐욕법 Greedy Lv.1) - 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1-1. Set을 활용한 Solution def solution(n, lost, reserve): # 1. Set을 만든다 reserve_only = list(set(reserve) - set(lost)) lost_only = list(set(lost) - set(reserve)) reserve_only.sort(); # 2. 여분을 기준으로 앞뒤를 확인하여 체육복을 빌려준다. for reserve in reserve_only: front = reserve - 1 back = reserve + 1 if front in lost_only: lost_only.remove(front) elif back in lost_only: lost_only.remove(back)..
2021.12.15 -
[프로그래머스] 프린터 문제 풀이(스택/큐 Lv.2) - 파이썬 python
0. 자세한 설명은 YouTube 영상으로 1-1. Queue + Enumerate 를 활용한 Solution def solution(priorities, location): # 1. Queue를 만든다. printer = [(i,p) for i,p in enumerate(priorities)] turn = 0 while printer: job = printer.pop(0) # 2. 나보다 중요한 job이 있으면 뒤에 넣는다. if any(job[1] < other_job[1] for other_job in printer): printer.append(job) else: turn+=1 # 3. 내가 제일 중요하다면 수행하고 location과 비교한다. if job[0] == location: break;..
2021.12.13 -
[2021 카카오 코딩테스트] 신규 아이디 추천 - 파이썬
0. 자세한 설명은 YouTube 영상으로 1-1. 정규표현식을 활용하지 않는 solution def solution(new_id): answer = '' # 1 new_id = new_id.lower() # 2 for c in new_id: if c.isalpha() or c.isdigit() or c in "-_.": # if c.isalnum() or c in "-_.": answer += c # 3 while '..' in answer: answer = answer.replace('..', '.') # 4 if answer and answer[0] == '.': # if answer[0:1] == '.': answer = answer[1:] if answer and answer[-1] == '.'..
2021.11.22 -
[프로그래머스] 위장 (해시 Lv. 2) - 파이썬 Python
0. 동일 유형 문제 [프로그래머스] 완주하지 못한 선수 (해시 Lv. 1) [프로그래머스] 전화번호 목록 (해시 Lv. 2) [프로그래머스] 위장 (해시 Lv. 2) [프로그래머스] 베스트 앨범 (해시 Lv. 3) 1. 문제 설명 (출처 : 프로그래머스, 원 출처) 스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다. 종류 이름 얼굴 동그란 안경, 검정 선글라스 상의 파란색 티셔츠 하의 청바지 겉옷 긴 코트 스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수..
2021.10.04 -
[프로그래머스] 전화번호 목록 문제 풀이(해시 Lv. 2) - 파이썬 Python
0. 동일 유형 문제 [프로그래머스] 완주하지 못한 선수 (해시 Lv. 1) [프로그래머스] 전화번호 목록 (해시 Lv. 2) [프로그래머스] 위장 (해시 Lv. 2) [프로그래머스] 베스트 앨범 (해시 Lv. 3) Youtube 영상으로 설명을 보고 싶으시다면 다음 영상을 참고하세요. 1. 문제 설명 (출처 : 프로그래머스, 원 출처) 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어..
2021.09.25