본문 바로가기
반응형

프로그래머스/3단계28

(Python/LV3) 야근지수 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/12927 풀이: 첫 풀이 테스트 케이스는 다맞음 채점하면 20/100 def solution(n, works): work_sum = sum(works) list = [] if n >= work_sum: return 0 a, b = (work_sum - n) // len(works), (work_sum - n) % len(works) for i in range(len(works)): list.append(a) idx = len(list) - 1 for i in range(b): list[idx] += 1 idx -= 1 return sum([i**2 for i in list]) 두 번째 풀이.. 2022. 10. 28.
(Python/LV3) 최고의 집합 출처: https://school.programmers.co.kr/learn/courses/30/lessons/12938 문제 풀이: 첫 시도 combinations 를 써서 하려했지만 시간초과날꺼 같았고 4,4 같은경우를 생각못함 두 번째 시도 if n > s : return [-1] if n == s: return [1 for i in range(n)] 필요한 갯수가 합보다 커버리면 자연수 6개로 7을 만들수 없는것처럼 -1 리턴 6개로 7을 만드려면 1을 리스트에 6개 담아서 리턴하면 된다. 가장 큰 곱이 나오려면 각 숫자별 차이가 작아야한다 그래서 합에서 갯수를 나눠주면 똑같은 숫자를 나눠주게되는데. 만약 13을 3개로 만들라 하면 4,4,4 하고 1이 남는다 근데 문제에서 오름차순으로 정렬하라했.. 2022. 10. 28.
(Python/LV3) 이중우선큐 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/42628 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이: import heapq def solution(operations): list = [] # heapq 만들예정 맨 위가 최솟값 for i in operations: order, act = i.split(" ") if order == "I": heapq.heappush(list, int(act)) else : if '-' in act: # - 가 붙으면 빼주는 것 if len.. 2022. 10. 28.
(Python/LV3)프로그래머스: 하노이의탑 문제 출처:https://programmers.co.kr/learn/courses/30/lessons/12946 코딩테스트 연습 - 하노이의 탑 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대 programmers.co.kr 풀이: def solution(n): def hanoi(n, i, j, via): if n == 1: answer.append([i, j]) return hanoi(n - 1, i, via, j) answer.append([i,j]) hanoi(n - 1, via, j, i) answer = [] hanoi(n,1,3,2) re.. 2022. 5. 19.
반응형