본문 바로가기
반응형

프로그래머스/3단계28

(Python/LV3)가장 먼 노드 문제출처: https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: from collections import deque def solution(n, edge): dist = [1] + [0] * (n - 1) graph = [[ ] for i in range(n)] q =deque([1]) for x, y in edge: graph[x-1].append(y) graph[y-1].append(x) while q: l = len(q) for i i.. 2023. 4. 18.
(Python/LV3) 여행경로 문제출처: https://school.programmers.co.kr/learn/courses/30/lessons/43164 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: def solution(tickets): answer = [] routes = dict() # 티켓 정보를 저장하는 딕셔너리 for (start, end) in tickets: if start in routes: routes[start].append(end) else: routes[start] = [end] for i in routes.keys(): routes[i].sort(r.. 2023. 4. 12.
(Python/LV3) 기지국 설치 문제출처: https://school.programmers.co.kr/learn/courses/30/lessons/12979 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: import math def solution(n, stations, w): count = 0 maps = [0 for _ in range(n)] for station in stations: for i in range(station - w - 1, station + w): if i >= 0 and i < len(maps): maps[i] = 1 result = [] zeros = .. 2023. 4. 12.
(Python/LV3)숫자 게임 문제 출처:https://school.programmers.co.kr/learn/courses/30/lessons/12987 풀이 : from collections import deque def solution(A, B): idx = 0 A = deque(sorted(A)) B = deque(sorted(B)) count = 0 while len(B) > 0 and len(A) > 0: left, right = A.popleft(), B.popleft() if right > left : count += 1 else: idx += 1 A.appendleft(left) return count idx 인덱스 A,B 를 메모리 땜에 Deauq 하였다 count 는 총 이긴수 어차피 A 의 숫자는 알고 있다, 그.. 2023. 3. 3.
(Python/LV3) 네트워크 문제출처: https://school.programmers.co.kr/learn/courses/30/lessons/43162 풀이: from collections import deque def solution(n, computers): graph = [[] for _ in range(n+1)] visited = [False] *(n+1) count = 0 for idx, i in enumerate(computers): for j in range(len(i)): if computers[idx][j] == 1 and idx != j : graph[idx+1].append(j+1) for i in range(1,n+1): if visited[i] == False: dfs(idx,graph,visited) co.. 2023. 2. 21.
(Python/LV3) 디스크 컨트롤러 문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/42627 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이: def solution(jobs): lst = sorted(jobs,key=lambda x:(x[1])) start = 0 res = 0 while lst: for i in range(len(lst)): if lst[i][0] 17이다 res 는 (3,7, 17) // 3 을 해주면 9 가 나온다. lst.pop(i) 인 이유는 그냥 맨 왼쪽껄 빼면 [2,2],,,[1,4] 인.. 2022. 12. 14.
반응형