Algorithm/dfs

    프로그래머스 전력망을 둘로 나누기 c++ // int dfs 자식수세기

    https://school.programmers.co.kr/learn/courses/30/lessons/86971 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. int dfs 자식수세기 지역변수로 ret=1 ret+=dfs(next) return ret 하면된다. int dfs(int node){ visited[node]=1; int ret=1; for(int next=0;next

    프로그래머스 네트워크 c++ // 인접행렬 dfs

    https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 의사코드 for(nodes) if(visit) continue; dfs(node) answer++ DFS: 방문처리 for(연결된노드들) if(방문) continue if(연결되었음) dfs(there) 2. 전체코드 #include using namespace std; int answer; int v[204]; int N; //해당 노드(컴퓨터)dfs void dfs(int& n, vect..

    프로그래머스 타겟넘버 c++ // dfs

    https://school.programmers.co.kr/learn/courses/30/lessons/43165?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 의사코드 최악 : 2^20 == 1048576 < 1억 이므로 완탐가능하다. 모든넘버에대해 -, + 경우를 가정하고 dfs로 완탐한다. 2. 전체코드 #include #include using namespace std; int answer; void dfs(vector& numbers, int& target, int idx, int result){ if(idx==num..