문제https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이피로도를 사용하여 던전을 탐험하고, 최대한 많은 던전을 탐험할 수 있는 경우의 수를 찾는 문제.k: 현재 피로도dungeons: 던전 정보를 담은 2차원 배열 ([[최소 필요 피로도, 소모 피로도], ...])해당 문제는 백트래킹(Backtracking)을 사용하여 풀 수 있다. 백트래킹(Backtracking)해를 찾는 도중 해가 아니어서 막히면, 되돌아가서 다시 해를 찾는 기법모든 경우의 ..
python
문제https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이문제의 조건은 아래와 같다.0P0처럼 소수 양쪽에 0이 있는 경우P0처럼 소수 오른쪽에만 0이 있고 왼쪽에는 아무것도 없는 경우0P처럼 소수 왼쪽에만 0이 있고 오른쪽에는 아무것도 없는 경우P처럼 소수 양쪽에 아무것도 없는 경우단, P는 각 자릿수에 0을 포함하지 않는 소수입니다.예를 들어, 101은 P가 될 수 없습니다. 먼저 주어진 수 n을 k진법으로 변환한다.그 후 조건에 만족하는 숫자들..
문제https://school.programmers.co.kr/learn/courses/30/lessons/135807 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이1. 철수가 가진 카드들에 적힌 모든 숫자를 나눌 수 있고 영희가 가진 카드들에 적힌 모든 숫자들 중 하나도 나눌 수 없는 양의 정수 a2. 영희가 가진 카드들에 적힌 모든 숫자를 나눌 수 있고, 철수가 가진 카드들에 적힌 모든 숫자들 중 하나도 나눌 수 없는 양의 정수 a 위 조건을 만족하는 수 중 가장 큰 양의 정수를 반환해야한다.def solution(arrayA, arrayB): ..
문제https://school.programmers.co.kr/learn/courses/30/lessons/142085 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이힙을 사용하는 문제다.import heapqdef solution(n: int, k: int, enemy: list) -> int: """ round: 통과한 라운드의 수 enemies: 현재까지 상대한 적의 수 """ round = enemies = 0 heap = [] for e in enemy: heapq.heappush(heap, -e..
문제프로그래머스 Lv2 https://school.programmers.co.kr/learn/courses/30/lessons/17686 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr `key=` 의 역할?제목에 적었다시피, 이 문제를 풀다 key=의 정확한 기능을 알게되었다. 바로 아래의 풀이를 통해서인데,import redef solution(files): def key_func(file): # [(요소들)] 의 형태로 반환하기 때문에 [0]으로 튜플만 선택해준다. head, number, tail = re.findall(r..
다음과 같은 리스트가 있다고 가정해보자.lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]갯수가 정확히 나누어 떨어질때def solution(data, n): return [data[i: i+n] for i in range(0, len(data), n)]# print(solution(lst, 4)) 출력[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]https://jsikim1.tistory.com/141 Python list chunk - 리스트 분할(자르기, 나누기, split) 방법Python list chunk - 리스트(배열) 분할(자르기, 나누기, split) 방법 Python에서 list를 원하는 간격으로 나누는 방법을 알려드리도..