inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

2644 촌수계산 문제에 관한 질문

해결됨

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

선생님 안녕하세요! 강의 너무 잘 듣고 있습니다! 제가 2644번 문제를 혼자 아래 코드로 풀어보았는데 저는 선생님께서 count변수를 dfs 함수 인자에 준 것과는 다르게 처음부터 전역변수로 설정해서 조건이 맞으면 count 변수를 1씩 증가시키는 방향으로 작성을 했는데요. 이렇게 하니까 백준에서는 틀렸다고 나오더라구요. 둘 다 if문 안에서 조건이 맞으면 카운트 변수를 1씩 증가시키는건 같은거라고 생각이 드는데 (물론 다르겠지만..) 왜 카운트 변수를 인자로 넘겨줘야할까요? 감사합니다!

  • python
  • 코딩-테스트
  • 알고리즘
  • dfs
  • python3
noeliden1 댓글 1 좋아요 1 조회수 265

알고리즘 수업 깊이 우선 탐색1 수업자료 문의

해결됨

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

알고리즘 수업 깊이우선탐색2의 자료가 올라와 있는 것 같습니다.

  • python
  • 코딩-테스트
  • 알고리즘
  • dfs
  • python3
Edwards 댓글 2 좋아요 1 조회수 353

백준 11724 연결 요소의 개수 문제

해결됨

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

선생님 안녕하세요 일단 너무 만족스러운 강의 준비해주셔서 감사하고 정말 돈이 하나도 아깝지 않은 강의입니다. DFS 강의 말고도 다른 알고리즘 강의도 준비해주시면 너무 좋을것 같아요 ㅠㅠ 아무튼 질문은요, 선생님 강의를 듣고 아래처럼 제가 코드를 짰는데 선생님 코드랑 몇번을 비교해도 다른 점이 보이질 않는데 백준에서 제출했을 때 계속 메모리 초과라고 나옵니다. 혹시나 제가 바보같은 실수를 했을 수 있으니 미리 사과드립니다 ㅠㅠ!! 감사합니다 import sys sys.setrecursionlimit(10**6) N, M = map(int, sys.stdin.readline().split()) MAX = 1000 + 10 graph = [[False] * MAX for _ in range(MAX)] visited = [False] * MAX answer = 0 for _ in range(M): u, v = map(int, sys.stdin.readline().split()) graph[u][v] = True graph[v][u] = True def dfs(idx): visited[idx] = True for i in range(1, N + 1): if not visited[i] and graph[idx][i]: dfs(i) for i in range(1, N + 1): if not visited[i]: dfs(i) answer += 1 print(answer)

  • python
  • 코딩-테스트
  • 알고리즘
  • dfs
  • python3
noeliden1 댓글 2 좋아요 1 조회수 498

바이러스 백준 2606 dfs 종료는 어떻게 되는건가요?

해결됨

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

def dfs(idx): global visited, graph, answer visited[idx] = True answer += 1 for i in range(1,N+1): if not visited[i] and graph[idx][i]: dfs(i) 이와 같은 dfs 재귀함수에서 dfs(1)이 맨 처음에 실행되고 조건에 따라 계속 재귀되는데 마지막 dfs(7)까지 간다고 했을 때 range(1,N+1)에 범위는 넘지만 dfs(8), dfs(9), ... 이런식으로 계속 코드가 돌아버릴 수도 있는 것이 아닌가요?? DFS와 재귀함수가 처음이여서 질문을 명확하게 못 작성한 것 같네요. return이라는게 필요한 것이 아닌지, 재귀함수에 종료조건 이 어떻게 되는 것인지 궁금해서 여쭤봅니다. 답변 기다리겠습니다. 감사합니다

  • python
  • 코딩-테스트
  • 알고리즘
  • dfs
  • python3
녜힁 댓글 1 좋아요 1 조회수 215

연결되어 있고 아직 방문하지 않은 노드에 대한 방문 순서 관련

해결됨

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

제가 경험이 부족해서 그런 것 같은데요, 이 문제는 'x < y'라는 조건이 없다면 DFS로 풀 수 있는 문제가 아닌 것 같다는 생각이 들었습니다. https://www.acmicpc.net/problem/2644 에서 '입력' 파트를 보면, '번호 x는 뒤에 나오는 정수 y의 부모 번호를 나타낸다.'라고만 나와있습니다. 즉, 'x < y'라는 조건이 주어져 있지 않습니다. 부모 노드 번호가 자식 노드 번호보다 작다는 조건이 주어져 있지 않는 것입니다. 그래서 저는 이 문제가 DFS로 풀리는 문제가 아닐 것 같다고 생각했었습니다. 위 그림에서는 노드2의 부모가 1이지만, 2보다 값이 큰 3이 될 수도, 4가 될 수도 있을 것이라 생각했습니다. 따라서 노드2를 방문한 이후에, 노드2와 연결된 노드 중 아직 방문하지 않은 노드들 중 어떻게 부모 노드를 찾아야하지? '부모 노드 번호 < 자식 노드 번호'라는 조건이 없으면, 부모 노드를 찾을 수 없을 것 같은데?하는 생각이 들었습니다. 문제에서 x<y라는 조건이 없는 것 같은데, 어떻게 '나와 연결되어 있고 아직 방문하지 않은 노드 중 번호가 가장 작은 노드를 방문해야겠다'는 생각을 하신 것인지 궁금합니다..

  • python
  • 코딩-테스트
  • 알고리즘
  • dfs
  • python3
도토리 댓글 1 좋아요 1 조회수 250

문제 조건 관련 질문

해결됨

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

문제( https://www.acmicpc.net/problem/1260 )에 다음과 같은 조건이 있는데, 이게 무슨 의미인가요..? 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다.

  • python
  • 코딩-테스트
  • 알고리즘
  • dfs
  • python3
도토리 댓글 1 좋아요 1 조회수 252

graph, visited 사이즈 관련 문의

해결됨

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

graph, visited의 사이즈를 다음 코드와 같이 노드 개수에 맞게 (n+1)로 하면 되겠다고 생각했는데, 노드 개수의 최댓값인 1000을 이용해 사이즈를 정하신 이유가 무엇인가요?? graph = [[False]*(n+1) for _ in range(n+1)] visited = [False]*(n+1)

  • python
  • 코딩-테스트
  • 알고리즘
  • dfs
  • python3
도토리 댓글 1 좋아요 2 조회수 365

딕셔너리 키-값 같이 출력하는 방법

해결됨

출력: 이렇게 나오게 만들고 싶어서 for, if-elif 문을 사용하였는데 딕셔너리일 때 어떤 식으로 코드를 작성해야 입력 부분의 중복을 없앨 수 있을지 고민입니다.. 전문가님들 고견 부탁드려요! 소중한 시간 내주셔서 감사합니다~~ 출력: 입력: - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

  • 딕셔너리
  • python3
  • 파이썬
  • 질문
준희 김 댓글 1 좋아요 0 조회수 293

python cx_freeze linux

미해결

안녕하세요 윈도우에서 cx_freeze 사용하여 실행파일 만들면 exe 실행 파일 만들어 지면서 잘 동작합니다. 하지만 리눅스에서는 실행파일은 나오는데 실행 파일을 클릭해보면 "공유 라이브러리" 파일에 대해 동작하는 포로그램을 설치하지 않았습니다. 하고 나와 소스코드 앞에 #!/usr/bin/env python3 를 다 붙여 python3 setup.py build 를 하여 싫행파일을 클릭해봐도 같은 증상입니다.ㅠㅠ 혹시 해결방법 아시는분 있으신가요? 아 그리고 briefcase 라는 모듈도 같은 역할을 하는건가요?? 독립 실행형 패키지를 만들 수 있는 피키징 도구라는 말만 있고 자료가 너무 없네요ㅠㅠ

  • python3
  • cx_freeze
  • linux
  • 파이썬
parkcs01 댓글 0 좋아요 0 조회수 465

인기 태그

인프런 TOP Writers

주간 인기글