본문 바로가기

분류 전체보기196

여행 경로 - Python, dfs, 히에로홀드 경로(Eulerian Path) https://school.programmers.co.kr/learn/courses/30/lessons/43164 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   풀이 - 나의 생각point 1. 출발지별 도착지를 저장할 때 알파벳을 내림차순으로 정렬 ==> 그래야 pop할때 알파벳 순으로 뽑아낼 수 있음 point 2. 기록한 여행 순서를 역순으로 반환 이런 기록 문제에 자주 쓰이는 방식 DFS 탐색 과정DFS는 재귀적으로 출발지에서 가능한 도착지로 이동하며 경로를 탐색합니다. 1. 가능한 경로가 있으면 계속 깊이 들어갑니다.2. 더 이상 이동할 경로가 없으면 "후퇴"합니다. 후퇴 시, 탐색이 완료.. 2024. 11. 20.
보안 오류 해결: PSSecurityException npm의 버전을 확인하려고 npm -v를 누르니까 에세스 권한이 없다는 식으로 보안 오류가 떴다. 이게 뭐꼬하고 찾아보니 Power Shell에서 권한을 풀어줘야 한다는 것을 알게 되었다. 1. PowerShell을 관리자로 실행 2. 권한 풀어주기 ExecutionPolicy 이걸 입력하면 스크립트 제한 설정이 어떻게 되었는지 알 수 있습니다. 지금보면 Restricted (기본 실행 정책으로 개별 명령을 허용하지만 스크립트를 실행하지 않습니다.) 으로 되어있었을 겁니다. Set-ExecutionPolicy Unrestricted 또는Set-ExecutionPolicy RemoteSigned(추천) 그 후 다시 ExecutionPolicy를 입력하면 바뀐 설정을 볼 수 있습니다.Restricted:기본.. 2024. 11. 19.
00. Node.js 설치 1. Node.js 파일 다운로드 설치 경로 : https://nodejs.org/en Node.js — Run JavaScript EverywhereNode.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.nodejs.org 2. Next 클릭3. 라이센스 동의 및 Next 4. 설치 경로 설정 및 Next5. Custom Setup 및 Next- Node.js runtime : Node.js 런타임 본체- corepack manager : 패키지 관리자. npm, yarn등의 패키지 관리자의 여러 버전을 설치하고, 사용여부를 지정하는 것이 가능.  서로 다른 개발 또는 배포 환경에서 상호간의 설치 호환성을 유지하기 위해 사용 사.. 2024. 11. 19.
여행경로 - Python, dfs, stack 주소  풀이 - 나의 생각    코드 from collections import defaultdictdef solution(tickets): # 출발지별 도착지 정리 routes = defaultdict(list) for start, end in tickets: routes[start].append(end) # 출발지별 도착지 알파벳 순으로 정렬 for key in routes: routes[key].sort(reverse=True) print(routes) # 탐색 path = [] stack = ["ICN"] while stack: while routes[stack[-1]]: prin.. 2024. 11. 18.
야근 지수 - Python, heap https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 - 나의 생각힙으로 변환하기 전에 주어진 작업량을 음수로 변환한다. 이럴 경우 최대값이 최소값으로 인식되기 때문이다. [3, 4, 5] -> [-5, -4, -3] 그 뒤는 그러면 간단하다 주어진 n만큼 돌면서 최소값을 pop하고 +1해서 힙에 넣어준다 그 후 제곱하면서 더해주면 끝이다.   코드 import heapqdef solution(n, works): if sum(works) 2024. 11. 17.
더 맵게 - Python, heap https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   풀이 - 나의 생각Heap을 사용하면 쉽게 해결되는 문제였다. 주어진 리스트를 힙으로 변환 반복문을 돌면서 힙의 가장 낮은 값이 K보다 크며 종료 작다면 두번째 작은 값을 가져와서 규칙에 맞게 섞어준다. 이걸 반복하면 된다. 마지막으로 힙의 최솟값이 K보다 큰지 확인해서 성공했는지의 여부를 확인하면 된다. 코드 import heapqdef solution(scoville, K): answer = 0 heapq.heapify(sco.. 2024. 11. 16.