https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 풀이 순열을 응용하자 던전에 접근하는 순서에 따라 탐험할 수 있는 던전의 개수가 달라지기 때문이다. 만약 현재 피로도 k보다 큰 최소 필요 피로도를 만나면 다른 던전을 탐색하도록 해주자. 각 순열별로 탐색한 던전 개수를 집합에 저장하자 최종적으론 max(집합)이 유저가 탐색할 수 있는 최대 던전 수이다. 2. 정답 코드 def solution(k, dungeons): length = len(..
https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 풀이 세로 길이는 1부터 최대 (yellow 제곱근 + 1)까지 가능하다 가로 길이가 세로 길이보다 크거나 같기 때문이다. 예를 들어 yellow 개수가 8개일 때 조합할 수 있는 가로세로 길이는 (8, 1), (4, 2)뿐이다. 세로는 1과 2만 가능한데, 8의 제곱근이 2.xxx이라서 세로가 2일 수 있는 것이다! 참고로 아래 코드에서는 math 모듈을 import 해서 sqrt() 메서..
https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 풀이 모든 가능한 순열을 구하자 위 그림처럼 011이 입력으로 주어지면, 길이가 각 1, 2, 3인 다양한 순열이 존재한다. 순서가 중요하기 때문에 조합이 아니라 순열을 구해야 한다. 각 숫자는 문자열로 취급하므로 011이라는 것이 존재할 수 있다. 각 순열로 만들어진 숫자가 소수인지 판별하자 (with 집합) 위에서 만들어진 모든 조합을 int 타입으로 형변환하고, 이것이 소수인지 판별하자..