profile
뉴비

백준 1991. 트리 순 (Python)

문제 https://www.acmicpc.net/problem/1991 풀이 이진트리를 입력받아 전위순회(preorder), 중위순회(inorder), 후위순회(postorder)를 구현하는 문제이다. 처음에 트리의 입력이 노드순서대로 입력되는줄 알았는데 아니여서 개고생 ㅠㅠ 트리의 순서가 무작위로 입력되므로 이를 tree배열에 잘 넣어주어야 한다. t,l,r을 입력받는다 t를 인덱스로 변환시킨다(A -> ord(A)-64 -> 1번인덱스)(트리는 인덱스1시작이 편하드라..) tree, lefttree, righttree에 변환된 인덱스위치에 t, l, r값을 넣어준다. 모두 입력받았으면 전위, 중위, 후위순회 진행! 재귀함수로 진행한다. 전위순회 : root -> left -> right 중위순회 : left -> root -> right 후위순위 : left -> right -> root

2023년 2월 20일
·
0개의 댓글
·
post-thumbnail

SWEA 1219. 길찾기(Python)(D4)

데이터 저장 가이드라인이 있는 아주 친절한(?) 문제이다. 하지만 친절은 해로우므로, 별도로 graph 구성을 했다. graph[i]=[이동할 수 있는 노드번호들] 로 구성했다. 0번부터 출발하여, graph[0]의 노드번호들을 백트래킹으로 탐험한다. ex) 위의 예시에서, 0번(출발지점)과 연결된 노드들 -> 1,2 graph[0]에서 노드1을 제거하고 1번으로 이동(재귀) 재귀 밖에선, 노드1을 다시 넣어주고 노드2를 제거하고 이동(재귀) 반복하다가, 99번노드(도착지점)에 도달할 경우, global값 tmp을 1로 바

2023년 1월 30일
·
0개의 댓글
·
post-thumbnail

SWEA 1231. 중위순회(Python)(D4)

단순한 중위순회 문제이다. 중위순회란? 단순하게 노드와 노드의 왼쪽자손, 오른쪽자손이 주어지고, 노드의 값(문자)가 주어지므로 재귀함수로 중위순회 후 return 값들을 다 더해서 출력!

2023년 1월 30일
·
0개의 댓글
·
post-thumbnail

SWEA 1233. 사칙연산 유효성 검사(Python)

swea 1232, 사칙연산 문제에서 연산이 올바른지 확인하는 문제이다. 연산의 결과는 구할 필요가 없고, 연산이 올바르게 진행되는지(계산되는지) 확인하면 된다. 안되는 경우는 2가지가 있다 i) 상위노드가 연산자(+-*/)이고, 하위노드가 없을 때, ii) 상위노드가 숫자이고 하위노드가 존재할 때, 두가지의 경우가 재귀중에 존재할 경우, "x"를 리턴함. 최종적

2023년 1월 30일
·
0개의 댓글
·