파이썬 백준 22856번 : 트리 순회
·
Algorithm/python 백준
문제https://www.acmicpc.net/problem/22856   🌳풀이문제에 주어진대로 order함수를 구현했다.종료조건이 순회의 끝은 중위순회의 마지막 조건이다 때문에 중위순회한 결과를 저장할 리스트 visited_in을 따로 만들었다. import syssys.setrecursionlimit(1000000)N=int(sys.stdin.readline())Right=[[] for _ in range(N+1)]Left=[[] for _ in range(N+1)]visited_in=[1] #중위 순회 결과를 저장할 리스트 #Right와 Left 리스트에 자식노드번호를 넣음 for _ in range(N): v1,v2,v3=map(int,sys.stdin.readline().split())..
파이썬 프로그래머스 : [3차] 파일명 정렬
·
Algorithm/python 프로그래머스
문제https://school.programmers.co.kr/learn/courses/30/lessons/17686 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 파일명 정렬세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다.저장소 서버에는 프로그램의 과거 버전을 모두 담고 있어, 이름 순으로 정렬된 파일 목록은 보기가 불편했다. 파일을 이름 순으로 정렬하면 나중에 만들어진 ver-10.zip이 ver-9.zip보다 먼저 표시되기 때문이다.버전 번호 외에도 숫자가 ..
파이썬 프로그래머스 : 양과 늑대
·
Algorithm/python 프로그래머스
문제https://school.programmers.co.kr/learn/courses/30/lessons/92343 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 설명2진 트리 모양 초원의 각 노드에 늑대와 양이 한 마리씩 놓여 있습니다. 이 초원의 루트 노드에서 출발하여 각 노드를 돌아다니며 양을 모으려 합니다. 각 노드를 방문할 때 마다 해당 노드에 있던 양과 늑대가 당신을 따라오게 됩니다. 이때, 늑대는 양을 잡아먹을 기회를 노리고 있으며, 당신이 모은 양의 수보다 늑대의 수가 같거나 더 많아지면 바로 모든 양을 잡아먹어 버립니다. 당신은 중간에 ..
파이썬 백준 1717번 : 집합의 표현
·
Algorithm/python 백준
문제https://www.acmicpc.net/problem/1717  풀이크루스칼 알고리즘의 find_set, union을 이용해서 풀었다.부모가 같으면 같은 집합에 해당한다. import syssys.setrecursionlimit(1000000)n, m = map(int, sys.stdin.readline().split())parent = [i for i in range(n + 1)] # 부모집합 초기화 (처음엔 자기 자신을 부모로 가짐)def find_set(x): #부모 찾기 if parent[x] != x: parent[x] = find_set(parent[x]) return parent[x]def union(a, b): # union -> 그룹 합치기 a = ..
파이썬 백준 1504번 : 특정한 최단경로
·
Algorithm/python 백준
제목https://www.acmicpc.net/problem/1504  풀이알고리즘 : 다익스트라자료구조 : 인접리스트,  최소힙 import sysimport heapqdef dijkstra(s,e): #다익스트라 알고리즘 heap=[] heapq.heappush(heap,s) #힙에 시작노드 넣기 dist[s]=0 visited.add(s) #방문처리 while heap: v1=heapq.heappop(heap) for node in Graph[v1]: #연결된 노드 들 중방문되지 않았고 기존거리보다 거쳐서가는거리가 더 작은경우 dist갱신 if node[0] is not visited and dist[node[0]]>..
파이썬 백준 1261번 : 알고스팟
·
Algorithm/python 백준
문제https://www.acmicpc.net/problem/1261  풀이알고리즘BFS자료구조리스트(인접행렬) import sysfrom collections import dequedef BFS(): queue=deque() queue.append((0,0,0)) while queue: x,y,b=queue.popleft() for i in range(4): #상,하,좌,우 탐색 n_x=x+dx[i] n_y=y+dy[i] if 0 visited 업데이트if N==M==1: #1 1 0 일경우 반례처리 print(maps[0][0])else: print(visited[M-1][N-1])  덧)1..
✿(๑❛ڡ❛๑)✿
'다시' 태그의 글 목록