백준 트리의 지름(2)
-
[C++] 백준 1167 트리의 지름
1967번과 다를 게 없는 문제였다. 그냥 입력받는 부분만 조금 바꾸고 최댓값만 수정해서 제출했다. 1967번 해설: (https://karma2.tistory.com/6) #include #define MAX 100001 using namespace std; struct Pair { int fir, sec; }; vector v[MAX]; bool visited[MAX] = {false}; int Max = 0, End = 0; //최댓값, 끝지점 변수 void dfs(int a, int l) { if (visited[a]) return; visited[a] = true; if (Max < l) //보다 더 큰 최댓값을 발견했다면 Max = l, End = a; for (int i = 0; i < (i..
2022.04.26 -
[C++] 백준 1967 트리의 지름
트리의 기본적인 개념을 잡고 난 후에 풀 수 있는 문제다. 트리(Tree)란 사이클이 없는 그래프라고 본문에서 나온다. 고로 dfs로 해결이 가능했다. 최댓값을 찾은 후에 최댓값을 갱신 해주면서 가장 멀리 있는 정점을 찾고 최댓값을 초기화 해준 후 다시 dfs를 돌려서 최댓값을 찾아주는 알고리즘을 짰다. #include #define MAX 10001 using namespace std; struct Pair { int fir, sec; }; vector v[MAX]; bool visited[MAX] = {false}; int Max = 0, End = 0; //최댓값, 끝지점 변수 void dfs(int a, int l) { if (visited[a]) return; visited[a] = true; ..
2022.04.25