본문 바로가기

전체 글88

[Greedy] 섬 연결하기 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42861 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코드n = 4costs = [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]]# return 4def solution(n,costs): parent = [0] * (n + 1) cost = sorted(costs,key=lambda x:x[2]) # cost순으로 오름차순 정렬 result = 0 # 부모 테이블상에서, 부모를 자기 자신으로 초기화 .. 2024. 6. 13.
[Greedy] 구명보트 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코드 1 (실패)def solution(people, limit): p = sorted(people) s=0 for i in range(len(p)-1): if p[i]+p[i+1] 이용 가능한 구명보트 개수만 구하는 거니까 효율성을 위해 people을 정렬한다.2개씩 비교해서 더한 값이 limit보다 작거나 같으면 짝 지어지므로 s에 1을 더한다.전체 people .. 2024. 6. 13.
[Greedy] 큰 수 만들기 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코드 1 (실패)from itertools import combinationsdef solution(number, k): num = [i for i in number] pos = [] answer=[] for i in range(len(num)): p=list(combinations(num,len(num)-k)) for i in p: pos.a.. 2024. 6. 13.
[Greedy] 체육복 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42862 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코드def solution(n, lost, reserve): set_lost = set(lost)-set(reserve) set_reserve = sorted(set(reserve)-set(lost)) for i in set_reserve: if i-1 in set_lost: set_lost.remove(i-1) elif i+1 in .. 2024. 6. 13.
[Brute Force] 모음 사전 문제: https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krproduct 중복 순열을 이용해서 풀었다.코드from itertools import productdef solution(word): m = ['A','E','I','O','U'] #각 5개씩 stack = [] s=0 for i in range(1,6): for k in product(m,repeat = i): stack.append(li.. 2024. 6. 13.
[Brute Force] 카펫 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr이 문제는 약수를 구하는 것이 핵심이다.코드def solution(brown, yellow): y = [] result = [] answer = [] for i in range(1,yellow+1): if yellow%i==0: y.append(i+2) yy = sorted(y,reverse = True) for i in range.. 2024. 6. 13.