Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- #define _ ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
- typedef long long ll ;
- int n,m,cnt;
- vector<vector<int> > g;
- bool vis[10001];
- vector<int> v;
- void dfs(int u) {
- vis[u] = 1;
- for (int i = 0; i < g[u].size(); i++)
- if (!vis[g[u][i]]){
- cnt++;
- dfs(g[u][i]);
- }
- }
- int main(){_
- //freopen("Graphs again.in","r", stdin);
- int t;
- cin >> t ;
- while(t--){
- scanf("%d%d", &n, &m);
- g.clear();
- g.resize(n);
- for (int i = 0; i < m; i++) {
- int a, b;
- scanf("%d%d", &a, &b);
- g[a].push_back(b);
- g[b].push_back(a);
- }
- memset(vis, 0, sizeof(vis));
- v.clear();
- for(int i=0;i<n;i++){
- cnt=0;
- if(!vis[i])
- dfs(i);
- v.push_back(cnt);
- }
- sort(v.begin(),v.end(),greater<int>());
- cout << v[0]+v[1] << endl ;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement