#include <iostream> #include <stdio.h> #include <string.h> int mapp[210][210] ; bool vis[210] ; using namespace std; int N,M ; void DFS(int u) { vis[u] = true ; for(int i = 1 ; i <= N ; i++) if(!vis[i] && mapp[u][i]) DFS(i) ; } int main() { int T ; scanf("%d",&T) ; while(T--) { scanf("%d %d",&N,&M) ; int u,v ; memset(mapp,0,sizeof(mapp)) ; memset(vis,false,sizeof(vis)) ; for(int i = 0 ; i < M ; i++) { scanf("%d %d",&u,&v) ; mapp[u][v] = mapp[v][u] = 1 ; } int cnt = 0 ; for(int i = 1 ; i <= N ; i++) { if(!vis[i]) { DFS(i) ; cnt++ ; } } printf("%d ",cnt) ; } return 0; }