목록알고리즘 (82)
내가 하고싶은 건 다 하는 공간
💡문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 💡문제 분석 요약numbers 리스트 속 숫자들을 더하거나 빼서 target 숫자를 만들 수 있는 경우의 수를 출력해야 한다. 💡알고리즘 설계 작은 문제로 큰 문제를 해결하는 방안, 즉 재귀함수를 사용하는 코드를 생각했다.근데 재귀함수를 어떻게 짜야겠다~라는 설계는 머릿속으로 다 되었는데, 코드 구현이 잘 안 되어서 다른 풀이를 참고하였다. 💡코드 def solution(numbe..
💡문제 링크https://school.programmers.co.kr/learn/courses/30/parts/12230 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 💡문제 분석 요약이것도 진짜 뭔 기법 이런 게 아니라 그냥 빡 구현숫자카드를 뽑은 뒤, 그 숫자카드로 만들 수 있는 소수를 만드는 문제이다.숫자카드는 numbers라는 변수로, 문자열 형태로 주어진다. 💡알고리즘 설계1. numbers 문자열을 리스트로 만든다.예. "123" -> [1, 2, 3]2. 순열을 이용해서 만들 수 있는 모든 경우의 수를 만든다.3. 중복은 제거한다.4. 소..
💡문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42584# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 💡문제 분석 요약 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 💡알고리즘 설계그냥 빡구현으로 풀었다!나보다 작은 수가 몇 번째 인덱스에 나오는지가 관건!이중 반복문을 이용했고, 이중문 안에서 a를 1만큼씩 일단 더하고,만약에 prices[i] > pr..
💡문제 링크https://www.acmicpc.net/problem/5568 💡문제 분석 요약 n개의 숫자들 중에서 k개를 가로로 이어서 만들 수 있는 숫자조합의 개수를 구하는 문제이다.순서가 상관이 있으므로 combinations가 아닌 permutations를 사용한다.💡알고리즘 설계순열을 이용하는 문제1. 카드 숫자들을 card 리스트에 넣는다.2. card에서 k개의 원소를 순열로 뽑은 후 만들어진 숫자를 정수로 변환한 뒤 int_list에 넣는다.3. set() 함수를 이용하여 int_list에서 중복을 제거한 뒤, 리스트의 길이를 구해 정수의 개수를 구한다.💡코드from itertools import permutations# inputn = int(input())k = int(input..

💡문제 링크https://www.acmicpc.net/problem/2217 💡문제 분석 요약1. 로프의 개수 n2. 각 로프가 버틸 수 있는 무게 제시3. 로프 여러 개로 하나의 물체를 들 수 있음4. 모든 로프를 사용할 필요 없고, 임의로 몇 개의 로프만 사용해도 된다.5. k개의 로프를 선택하면, 각각의 로프에는 모두 고르게 w/k 만큼의 중량이 걸리게 된다.6. w/k의 최댓값을 구하는 문제! 💡알고리즘 설계1. for문을 사용해서 모든 로프가 버틸 수 있는 무게 정보를 rope 리스트에 담기2. rope 리스트를 오름차순으로 정렬3. rope 리스트를 앞에서부터 탐색하며 최대 중량을 찾기4. 최대 중량 출력 💡코드n = int(input())rope = []for _ in range(n)..

💡문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42579 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 💡문제 분석 요약정렬과 해싱을 이용하는 문제1. 장르 정렬: 재생횟수가 가장 많은 장르순으로 정렬2. 장르 내 노래 정렬: 하나의 장르 내에서 재생횟수가 가장 많은 노래순으로 정렬해서 노래 2개 선택, 재생횟수가 동일하면 고유번호가 작은 노래가 앞에 오도록 정렬3. 장르별로 가장 많이 재생된 노래를 두개씩 뽑아 베스트앨범에 넣기 💡알고리즘 설계1. 장르별 재생횟수 정보를 담은 딕셔..