본문 바로가기

티스토리챌린지20

네트워크 - Python, DFS, BFS, Union_find https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 - 나의 생각이게 왜 Lv.3일까?   코드def solution(n, computers): def dfs(node): visited[node] = True for neighbor, connected in enumerate(computers[node]): if connected and not visited[neighbor]: dfs(neighbor) visi.. 2024. 11. 21.
여행 경로 - 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.
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.
2022 KAKAO BLIND RECRUITMENT > 신고 결과 받기 - Python, defaultdict, set, defaultdict 없이 초기화하기 https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   풀이 - 나의 생각한 유저가 여러명을 신고 할 수 있지만 중복으로 신고는 못합니다. 그래서 신고자별 신고 대상자를 set으로 중복 제거하면서 dict로 저장합니다. 그 dict를 이용해서 신고 횟수를 세고 그 신고 횟수가 k개 이상이면 카운트를 세주면 됩니다.  user_list를 참고하여 dict에 유저명과 위치를 기록합니다. #defaultdict not useuserIndex = {user:idx for idx, user for enu.. 2024. 11. 16.