본문 바로가기
반응형

프로그래머스234

(Python/LV2)야간 전술보행 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/133501 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: 최댓값 list = [distance] for i in range(len(scope)): start, end = sorted(scope[i]) work, rest = times[i] start, end = 시작값 끝나는값 일하는시간, 쉬는시간 현재위치 start점 만들어줌 while start 2022. 11. 4.
(Python/LV1)푸드 파이트 대회 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/134240 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: def solution(food): list =[food[i]//2 for i in range(1, len(food))] 두 명에서 하는거니깐 두 명의 몫 만큼 남겨둔다. res = '' for number, remainder in enumerate(list,start=1): if remainder == 0: pass else: res += str(number) * remain.. 2022. 11. 4.
(Python/LV2) 문자열 압축 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/60057 풀이: 첫 풀이: def solution(s): list = [] for i in range(1, len(s) // 2+ 1): res = '' count = 1 slice = s[:i] for j in range(i, len(s)+i, i): if slice == s[j:i+j]: count += 1 else: if count == 1: res += slice else: res += str(count) + slice slice = s[j:j+i] count = 1 list.append(len(res)) return min(list) 1개 틀림 if len(s) == 1: retu.. 2022. 11. 4.
(Python/LV1) 옹알이(2) 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/133499 문제 풀이: 첫 시도: from itertools import product def solution(babbling): speak = ["aya", "ye", "woo", "ma" ] count = 0 for j in babbling: for i in range(1,5): if j in list(map(''.join, product(speak, repeat = i))): count += 1 return count product 중복순열을 사용하려 했지만 ayaaya 같은것들 땜에 안됨 그렇다고 그냥 순열 하면 [1,2],[1,3][1,4] 는 나오지만 [2,1] 이렇게는 안나온다.. 2022. 11. 2.
(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/LV2) 롤케이크 자르기 문제출처: https://school.programmers.co.kr/learn/courses/30/lessons/132265 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: 내가 생각한 방법, for 문을 돌려 딕셔너리 key의 값 len 이 같을때 count 를 올린다. def solution(topping): up_dic = dict() # 형 down_dic = dict() # 동생 count = 0 for i in range(1,len(topping)): for i in topping[:i]: if i not in up_dic: up_dic.. 2022. 10. 26.
반응형