dfs,bfs
DFS graph = {'A':['B','C'], 'B':['A','D','E'], 'C':['A','G','H'], 'D':['B'], 'E':['B','F'], 'F':['E'], 'G':['C'], 'H':['C']} def dfs_iteration(graph, root): # visited = 방문한 꼭지점들을 기록한 리스트 visited = [] # dfs는 stack, bfs는 queue개념을 이용한다. stack = [root] while(stack): #스택에 남은것이 없을 때까지 반복 node = stack.pop() # node : 현재 방문하고 있는 꼭지점 #현재 node가 방문한 적 없다 -> visited에 추가한다. #그리고 해당 node의 자식 node들을 stack에 추가한다..
더보기
[백준/python] 정렬 과목선택
문제 JOI는 물리, 화학, 생물, 지구과학, 역사, 지리 총 6 과목의 시험을 봤다. 각 시험의 만점은 100점이다. JOI는 물리, 화학, 생물, 지구과학 4과목 중에서 3 과목을 선택하고 역사, 지리 2 과목 중에서 한 과목을 선택한다. 시험 점수의 합이 가장 높게 나오도록 과목을 선택할 때, JOI가 선택한 과목의 시험 점수의 합을 구하시오. 입력 입력은 6행으로 되어있으며, 각 행에 1개의 정수가 주어진다. 1행에는 JOI의 물리 시험의 점수 A가 주어진다. 2행에는 JOI의 화학 시험의 점수 B가 주어진다. 3행에는 JOI의 생물 시험의 점수 C가 주어진다. 4행에는 JOI의 지구과학의 시험 점수 D가 주어진다. 5행에는 JOI의 역사 시험의 점수 E가 주어진다. 6행에는 JOI의 지리 시험의..
더보기