728x90

level2 9

[프로그래머스] level2 - 오픈채팅방 : 파이썬(Python) 풀이

문제 프로그래머스 - 오픈채팅방(문제) 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr 코드 def solution(record): user_id = dict() seq = [] ment = [] for i in record: step = i.split() if step[0] == 'Enter': user_id[step[1]] = step[2] seq.append(step[1]) ment.append("님이 들어왔습니다.") elif step[0] == 'Leave': seq.append(step[1]) me..

코딩코딩 2021.07.03

[프로그래머스] level2 - 짝지어 제거하기 : 파이썬(Python) 풀이

문제 프로그래머스-짝지어 제거하기 : 파이썬 풀이 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 코드 def search(array, point): try: if(array[point] == array[point+1]): array.pop(point) array.pop(point) point = point-1 if point != 0 else 0 else: point += 1 except: pass return array, point def solution(s): s = list(s) if le..

코딩코딩 2021.05.26

[프로그래머스] level2 - 기능개발 : 파이썬(Python) 풀이

문제 프로그래머스 level2 기능개발 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 코드 import numpy as np def solution(progresses, speeds): answer = []; count = 0 progresses = np.array(progresses) speeds = np.array(speeds) while(len(progresses) > 0): progresses += speeds if(len(np.where(progresses >= 100)[0]) == 0): ..

코딩코딩 2020.11.15

[프로그래머스] level2 - 프린터 : 파이썬(Python) 풀이

문제 프린터 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린�� programmers.co.kr 코드 from collections import deque def solution(priorities, location): cnt = 0 priorities = deque(priorities) prioritie1 = deque([0]*len(priorities)) prioritie1[location] = 1 while(1): if(len(priorities) == 1): cnt += 1 break else: num = priorities.poplef..

코딩코딩 2020.09.16

[프로그래머스] level2 스킬 트리

문제 코딩테스트 연습 - 스킬트리 programmers.co.kr 코드 def search(a,b): c = list(b) d = 1 for i in range(len(c)-1,-1,-1): if(c[i] not in a): del c[i] if(len(c) == 0): d = 1 else: for i in range(len(c)): if(c[i] != a[i]): d = 0 return d def solution(skill, skill_trees): answer = 0; skill = list(skill) for i in range(len(skill_trees)): answer += search(skill,skill_trees[i]) return answer 코드풀이 skill : 선행되야 할 스킬 s..

코딩코딩 2020.09.09

[프로그래머스] level2 더 맵게 - 파이썬(Python)

문제 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같�� programmers.co.kr 코드 import heapq def solution(scoville, K): heapq.heapify(scoville) first = heapq.heappop(scoville) length = len(scoville) if(first >= K): return 0 elif(length == 1 and scoville[0] < K): return 1 else: for i in range(1, length): second = heapq.heapp..

코딩코딩 2020.08.28

[프로그래머스] level2 다리를 지나는 트럭 - 파이썬(Python)

문제 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이�� programmers.co.kr 코드 def solution(bridge_length, weight, truck_weights): time = 1; n = 1; stack = [truck_weights[0]]; total = truck_weights[0] if(len(truck_weights) == 1): time = bridge_length + 1 elif(sum(truck_weights)

코딩코딩 2020.08.27

[프로그래머스] level2 프린터

문제 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린�� programmers.co.kr 코드 from collections import deque def solution(priorities, location): cnt = 0 priorities = deque(priorities) prioritie1 = deque([0]*len(priorities)) prioritie1[location] = 1 while(1): if(len(priorities) == 1): cnt += 1 break else: num = priorities.popleft() ..

카테고리 없음 2020.08.24

[프로그래머스] level2 주식가격 - 파이썬(Python)

문제 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 코드 # 효율성 1,2,3,4,5 실패 import numpy as np def solution(prices): answer = [] prices = np.array(prices) for i in range(len(prices)-1): if(prices[i] Deque --> 결국 for...

코딩코딩 2020.08.23