[프로그래머스] 쿼드 압축 후 개수 세기 (파이썬)
·
Algorithm/Graph
분할 정복 문제https://school.programmers.co.kr/learn/courses/30/lessons/68936 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 💡풀이코드 (성공)def solution(arr): # answer[0]은 0의 개수, answer[1]은 1의 개수 answer = [0, 0] def solve(size, r, c): # 1. 현재 영역이 모두 같은 숫자인지 체크 first_val = arr[r][c] is_same = True for i in range(r, r + size):..
[백준] 3055 : 탈출 (파이썬)
·
Algorithm/Graph
BFS 문제https://www.acmicpc.net/problem/3055💡풀이코드 (성공 - BFS)'''.: 비어있는곳 (물 O, 고슴도치 O)*: 물 (물 O, 고슴도치 X)X: 돌 (물 X, 고슴도치 X)D: 비버의 굴 (물 X, 고슴도치 O)S: 고슴도치 위치 (물 O, 고슴도치 O)'''# 9:30 ~import sys from collections import dequer, c = map(int, sys.stdin.readline().split())visited = [[False] * c for _ in range(r)]visitedW = [[False] * c for _ in range(r)]graph = []S = None # 2) 좌표 사용 시 튜플 처음 선언D = Nonewater..
[프로그래머스] Level3 : 섬 연결하기 (파이썬)
·
Algorithm/Graph
MST 문제https://school.programmers.co.kr/learn/courses/30/lessons/42861 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr💡풀이코드 (성공 - MST Kruskal)def solution(n, costs): answer = [] graph = [] ans = 0 for n1, n2, w in costs: graph.append((w, n1, n2)) parent = [0] * (n + 1) def init(): for i in range(1, n + 1): parent[i..
[백준] 2583 : 영역 구하기 (파이썬)
·
Algorithm/Graph
BFS 문제https://www.acmicpc.net/problem/2583💡 풀이코드 (Python3 성공)import sys from collections import deque m, n, k = map(int, sys.stdin.readline().split())visited = [[False] * (n) for _ in range(m)]dy = [1, 0, -1, 0]dx = [0, 1, 0, -1]def bfs(y, x): queue = deque() cnt = 0 queue.append((y, x)) visited[y][x] = True while queue: y, x = queue.popleft() cnt += 1 for ii..
프로그래머스 네트워크
·
Algorithm/Graph
그래프, BFS/DFS 문제https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 💡 풀이코드 (성공 - MST Prim)import heapqdef solution(n, computers): answer = 0 graph = [[] for _ in range(len(computers) + 1)] # graph 만들기 for i in range(len(computers)): for j in range(len(computers)): ..
[백준] 1647 : 도시 분할 계획 (파이썬)
·
Algorithm/Graph
MST 문제https://www.acmicpc.net/problem/1647접근 방식문제 분석마을은 N개의 집과 그 집들을 연결하는 M개의 길로 이루어져 있다. 길은 어느 방향으로든지 다닐 수 있는 편리한 길이다. 그리고 각 길마다 길을 유지하는데 드는 유지비가 있다. 임의의 두 집 사이에 경로가 항상 존재한다.-> N개의 노드와 M개의 간선을 가지는 양방향의 가중치 그래프일단 분리된 두 마을 사이에 있는 길들은 필요가 없으므로 없앨 수 있다. 그리고 각 분리된 마을 안에서도 임의의 두 집 사이에 경로가 항상 존재하게 하면서 길을 더 없앨 수 있다. 마을의 이장은 위 조건을 만족하도록 길들을 모두 없애고 나머지 길의 유지비의 합을 최소로 하고 싶다.-> MST (1. 불필요한 간선 제거 2. 최소 신장 ..
_은선_
'Algorithm/Graph' 카테고리의 글 목록