#include <bits/stdc++.h>
using namespace std;
#define pii pair<int, int>
vector<vector<int>> graph;
vector<bool> visited;
pii dfs (int u, int parent) {
visited[u] = true;
pii res = {0, u};
for (auto v : graph[u]) {
if (v == parent) continue;
res = max(res, dfs(v, u));
}
res.first++;
return res;
}
int main () {
cin.tie(0)->sync_with_stdio(0);
int V, K;
int u, v;
int len = 0;
cin >> V >> K;
graph.resize(V);
visited.assign(V, false);
for (int i = 0; i < K; i++) {
cin >> u >> v;
u--;v--;
graph[u].push_back(v);
graph[v].push_back(u);
}
for (int i = 0; i < V; i++) {
if (visited[i]) continue;
len += dfs(dfs(i, -1).second, -1).first;
}
cout << len;
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |