본문 바로가기

global4

[프로그래머스/파이썬] 타겟 넘버 풀이 (Python, dfs, 재귀함수) [프로그래머스/파이썬] 타겟 넘버 풀이 (Python, dfs, 재귀함수) 1. 문제https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 2. 문제 해결 아이디어 (풀이) * DFS를 실행할 때, 계산의 마지막을 판단하는 방법은 'depth'이다. 1. number 배열의 숫자를 차례대로 계산한다. (depth로 숫자 index 판단)1.1. 이때 각 숫자마다 (+,-)를 한번씩 대입해서 계산한다.- (참고로, 처음부터 -가 붙을 수 있으니, 0에서 값을 더하거나 빼는 방식으로 진행) 2. 끝까지.. 2025. 2. 28.
[백준/24480/파이썬(Python)] dfs, 알고리즘 수업 - 깊이 우선탐색2 [백준/24480/파이썬(Python)] dfs, 알고리즘 수업 - 깊이 우선탐색2 24480번: 알고리즘 수업 - 깊이 우선 탐색 2 (acmicpc.net) 중요하게 볼 점 출력 : i번째 줄에는 정점 i의 방문 순서를 출력한다. 시작 정점에서 방문할 수 없는 경우 0을 출력한다. 입력 : 간선의 개수만큼 입력받는다. 문제 : 인접 정점은 내림차순으로 방문한다. 코드 from sys import stdin,setrecursionlimit input = stdin.readline count = 0 def dfs(graph, visited, start): global count count+=1 visited[start] = count for i in graph[start]: # 그래프 집합에서 if vi.. 2023. 3. 13.
[파이썬/Python] global, nonlocal 키워드 (전역변수,지역변수) [파이썬/Python] global, nonlocal 키워드, 전역변수,지역변수 global 키워드 함수 내의 지역변수에 global 키워드를 붙이면, 함수 밖의 같은 이름의 전역변수를 가리키게 해준다. result = 2 def a(): global result #전역변수 생성 result = result + 2 #result +=2 print("a() 내 result : ", result) #a() 내 result : 4 a() # 결과 : 4 print("result 값 : ", result) # result 값 : 4 결과 현재 전역변수로 result =2 가 선언되어 있다. a()라는 함수 안에 global result 키워드를 사용해주면, 함수 밖에 있는 전역변수 result를 가리키게 해준다.. 2023. 3. 7.
[백준/24479/파이썬(Python)] DFS, 알고리즘수업-깊이우선탐색1 [백준/24479/파이썬(Python)] DFS, 알고리즘수업-깊이우선탐색1 24479번: 알고리즘 수업 - 깊이 우선 탐색 1 (acmicpc.net) 코드 1. pypy from sys import stdin,setrecursionlimit #결과 리스트 result = [0] #입력 N, M, R = map(int, stdin.readline().split()) #방문여부 정점(노드) visited = [False] * (N+1) #0번째도 Flase로 했기 때문 graph = [[]for i in range(N+1)] #2차원만 컴프리핸션 써야함 다 복사돼서 setrecursionlimit(N+10) for i in range(M): #ex) u번노드에 v연결됨 u, v = map(int, std.. 2023. 3. 6.