본문 바로가기
반응형

프로그래머스/2단계110

(Python/LV2) 시소 짞꿍 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/152996 풀이: from itertools import combinations, product def solution(weights): count = 0 lists = tuple(combinations(weights,2)) times = tuple(product([2,3,4],repeat = 2)) for list in lists: for time in times: if list[0] == list[1]: count += 1 break if list[0] * time[0] == list[1] * time[1]: count += 1 break return count 쉬웠지만 역시 호락호락.. 2023. 1. 21.
(Python/LV2) 택배배달과 수거하기 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/150369 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: def solution(cap, n, deliveries, pickups): answer = 0 while deliveries or pickups: while deliveries and deliveries[-1] == 0: del deliveries[-1] while pickups and pickups[-1] == 0: del pickups[-1] answer += 2 *(m.. 2023. 1. 18.
(Python/LV2)이모티콘 할인 행사 문제출처: https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: from itertools import product def solution(users, emoticons): res = [0, 0] for discounts in product((40,30,20,10), repeat = len(emoticons)): # print(discounts) result = [0, 0] # 이모티콘 판매액 for user_discount, user_m.. 2023. 1. 17.
(Python/Lv2)마법의 엘리베이터 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/14865 풀이: 틀린풀이 def solution(storey): arr =[ int(i) for i in str(storey)] count = 0 while len(arr) > 0: number = arr.pop() if number > 5: count += 10 - number next_number = arr.pop() next_number += 1 arr.append(next_number) else: count += number return count 38.5 / 100 def solution(storey): arr =[ int(i) for i in str(storey)] count =.. 2023. 1. 1.
(Python/LV2) 테이블 해시 함수 문제 출처: 풀이: def solution(data, col, row_begin, row_end): x = sorted(data, key =lambda x:(x[col-1],-x[0])) res = [] while row_begin 2022. 12. 26.
(Python/LV2) 디펜스 게임 출처: https://school.programmers.co.kr/learn/courses/30/lessons/142085 문제 풀이: import heapq def solution(n, k, enemy): list = [] res = 0 count = 0 for i in enemy: res += i # 일단 막고봄 if res > 밑에서 최댓 값 비교 count += 1 elif k > 0: # 이제 필살기를 써서 막을때 k -= 1 # k를 1 깎고 res += heapq.heappushpop(list,-i) # 가장 높은값과 에너미와 비교해서 높은거를 k를 막고 낮은거를 다시 집어넣은 count +=1 else: break return count 2022. 12. 18.
반응형