[프로그래머스]타겟 넘버 ** 개인적 공부를 위한 포스팅일 뿐이므로 신뢰성은 보장할 수 없다. ** 30분 안에 풀었으면 Mastered 카테고리이다. 문제에 대한 이해 각 리스트 원소 별로 플러스 연산과 마이너스 연산 중에 하나만 택하면 되기 때문에 간단한 상태 트리를 그려보면 이해가 쉽다. 정석적인 DFS 문제이다. 나의 풀이 def solution(numbers, target): answer = 0 def dfs(depth, result): nonlocal answer if depth == len(numbers): if result == target: answer += 1 return else: dfs(depth+1, result+numbers[depth]) // 플러스 연산을 할 경우 dfs(depth+1, result-.. 2023. 11. 15. [프로그래머스]기능개발(다시풀기) ** 개인적 공부를 위한 포스팅일 뿐이므로 신뢰성은 보장할 수 없습니다. 이전에 풀었던 문제이나 다시 보니 또 초면이라^^; 바로 풀이하지 못했고, 이전에 제출한 답안이 상당히 비효율적인 면이 있어서 다시 풀었다. 이전 풀이 from collections import deque def solution(progresses, speeds): dq = deque() for i in range(len(progresses)): dq.append([progresses[i], speeds[i]]) # print(dq) def speed_up(): for idx, val in enumerate(dq): p, s = val dq[idx][0], dq[idx][1] = p + s, s # print(dq) cnt = 0 .. 2023. 11. 15. [프로그래머스][예산] 정렬을 이용한 풀이 https://school.programmers.co.kr/learn/courses/30/lessons/12982 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제에 대한 이해: 각 부서에 지원할 수 있는 전체 예산 금액 budget 이 정해져 있다. 정해진 금액 budget과 부서별로 필요한 예산이 담긴 배열 d가 주어질 때, 예산 한도 내에서 지원할 수 있는 최대 부서의 수를 구하라. 이 문제를 정리하는 이유: 부서별 필요 예산이 담긴 d를 오름차순으로 정렬하기만 하면 매우 쉽게 풀 수 있는 문제를 또 DFS로 풀려고 했다. 지원할 수 있는 부서의 .. 2023. 1. 23. [프로그래머스][점프와 순간 이동] DFS를 사용하지 않는 풀이 https://school.programmers.co.kr/learn/courses/30/lhttps://school.programmers.co.kr/learn/courses/30/lessons/12980#essons/12980# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제에 대한 이해: 위치 0부터 점프나 순간이동을 해서 목적지 N까지 도달한다. 점프를 할 경우 한 칸을 점프할 때마다 배터리가 하나씩 소모된다. 예를 들어 3칸을 점프했다면 소모된 배터리는 3이다. 순간이동을 할 경우 현재까지 이동한 거리 즉. 현재 인덱스에서 2배가 된 인덱스'로.. 2023. 1. 22. [LeetCode][316] 스택, 재귀를 이용해 다시 풀 문제 https://leetcode.com/problems/remove-duplicate-letters/description/ Remove Duplicate Letters - LeetCode Remove Duplicate Letters - Given a string s, remove duplicate letters so that every letter appears once and only once. You must make sure your result is the smallest in lexicographical order among all possible results. Example 1: Input: s = "bcabc" Outp leetcode.com 추후에 다시 풀어볼 문제로 정리하고자 포스팅 2023. 1. 13. 이전 1 2 3 다음