본문 바로가기
300x250

dfs2

[BOJ 1240][c++] 노드사이의 거리 https://www.acmicpc.net/problem/1240 1240번: 노드사이의 거리 첫째 줄에 노드의 개수 $N$과 거리를 알고 싶은 노드 쌍의 개수 $M$이 입력되고 다음 $N-1$개의 줄에 트리 상에 연결된 두 점과 거리를 입력받는다. 그 다음 줄에는 거리를 알고 싶은 $M$개의 노드 쌍 www.acmicpc.net dfs,bfs문제이다. 루트로부터 각 노드까지의 거리를 구하고, 공통 부분을 빼주면 된다. 코드는 아래에 있다. 더보기 #include using namespace std; vector g[1001]; bool c(pair a,pair b){return a.first> n >> m; for(int i=1;i> f >> t >> c; g[f].push_back(make_pair(.. 2023. 8. 3.
[C++][BOJ 11725] 트리의 부모 찾기 https://www.acmicpc.net/problem/11725 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net BFS로 풀 수도 있고, DFS로도 풀 수 있는 문제다. 아직 방문하지 않은 정점인 경우 현재 방문 노드를 아직 방문하지 않은 노드의 부모로 check하고 방문 여부를 true로 바꿔주면 되는 문제다. 주의 사항으로는 c++에서 endl을 사용하는 경우에는 cout과정에서 시간을 오래 잡아먹어 시간초과가 나오므로 \n을 사용해야 한다. 코드는 아래에 있다. dfs 코드 더보기 #include using namespace std; vector graph[1000.. 2023. 5. 23.
300x250