반응형 프로그래머스/2단계110 (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/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. (Python/LV2) 할인행사 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/131127 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 과정: 1. if sum(number) > len(discount): # 할인진행기간보다 사고싶은게 많을경우 return 0 for i in want: # 사려는 항목이 할인을 안 하는 경우 if i not in discount: return 0 2. want_dic = {i:0 for i in want} for want, count in zip(want_dic, number).. 2022. 10. 26. (Python/LV2) 택배상자 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/131704 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: 시도 1 def solution(order): stact_left = [] stack_right =[] i = 1 while True: stact_left.append(i) if stact_left[-1] == order[0]: stack_right.append(order[i::]) break i += 1 if stact_left ==[[]]: stact_left.append.. 2022. 10. 25. (Python/LV2) 연속 부분 수열 합의 개수 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/131701 풀이: def solution(elements): elements_set = set(i for i in elements) elements = 2 * elements for i in range((len(elements)//2)): for j in range(2,(len(elements)//2) + 1): elements_set.add(sum(elements[i:i+j])) print(len(elements_set)) 내가 생각한 방법은 elemets = [1,5,3,6,8] 일단 1개씩일경우 를 elements_set 에 넣어주었고 최대 5개 일 경우는 8,1,5,3,6 이기 때.. 2022. 10. 25. (Python/LV2) 숫자 블록 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/12923 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 첫 도전 def solution(begin, end): lists = [0 for i in range(0, begin+1)] lists.extend([0] * (end-begin)) for i in range(begin, end//2 + 1): for j in list(range(i, end+1, i)): if j == i: continue else: lists[j] = i re.. 2022. 10. 22. 이전 1 ··· 6 7 8 9 10 11 12 ··· 19 다음 반응형