[백준] 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..
[프로그래머스] Level2 : 주차 요금 계산 (파이썬, C++)
·
Algorithm/Dictionary
구현, 해시 문제https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr💡풀이코드 (성공 - Python)import heapqimport mathdef solution(fees, records): answer = [] # 기본시간(분), 기본요금(원), 단위시간(분), 단위요금(원) bTime = fees[0] bFee = fees[1] pTime = fees[2] pFee = fees[3] dic = {} for str in reco..
[프로그래머스] 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..
[백준] 1987 : 알파벳 (파이썬)
·
Algorithm/Back Tracking
그리디, 백트래킹 문제https://www.acmicpc.net/problem/1987접근 방식 백트래킹💡 풀이코드 (Pypy3 성공 - DFS)import sys r, c = map(int, sys.stdin.readline().split())graph = []dy = [1, 0, -1, 0]dx = [0, 1, 0, -1]visited= [[False] * c for _ in range(r)]ans = 0alpha = set()# print(visited)for _ in range(r): l = list(map(str, sys.stdin.readline().strip())) # 문자열 하나하나씩 저장 alpha.update(l) # ['H', 'M', 'C', 'H', 'H']를 한번에 ..
[프로그래머스] Lv.2 충돌위험 방지 (파이썬)
·
Algorithm/Simulation
구현, 시뮬레이션 문제https://school.programmers.co.kr/learn/courses/30/lessons/340211 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 설명 routes = []에 몇번 point가 몇번 point로 이동할 것인지의 정보가 주어진다.우리는 routes의 정보를 가지고, point -> point로 이동할 때 최단 경로만을 사용해서 이동하고 싶다.이때, r좌표의 이동을 c좌표의 이동보다 우선시한다.최종적으로는 routes에 있는 point -> point로 동시에 이동시킬 때, 몇 번 충돌하는지 알고 싶다.접근 방식초기BFS를 통해 각각의 point에서..
[소프티어] Lv.3 함께하는 효도 (파이썬)
·
Algorithm/Back Tracking
DFS, 백트래킹 문제https://softeer.ai/practice/7727 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai문제 설명각각의 친구들이 현재 자신의 위치에서 이동할 수 있는 길이 4의 경로들 중에서, 모든 친구들과 경로가 겹치지 않으면서 과일을 최대로 수확할 수 있는 수확량을 구하는 것✏️ 짚고 넘어갈 Point1) DFS에서 특정 level에 도달할 때까지 기록해두었던 임시 배열을 result 배열에 추가하고 싶을 때 잘못된 코드if level == 4: # 얕은 복사로 인해 값이 덮어씌워지는 문제 발생 (result가 변경됨에 따라 그 이전에 추가했던 값들도 변경됨) cand[idx].append(result) return위의 조건문 안에서 res..
_은선_
'Algorithm' 카테고리의 글 목록