#3、#6AC,其余RE
#include<bits/stdc++.h>
#define ll unsigned long long
#define dep(i,a,n) for(int i = a;i >= n;i--)
#define rep(i,a,n) for(int i = a;i <= n;i++)
using namespace std;
int n,m;
int ans;
vector<vector<int>> a;
bool b[100005];
void dfs(int k){
b[k] = true;
rep(i,0,(int)a[k].size()-1){
int f = a[k][i];
if(!b[f]) dfs(f);
}
return ;
}
int main() {
memset(b,false,sizeof(b));
int x,y;
cin >> n >> m;
a.resize(n+5);
rep(i,1,m){
cin >> x >> y;
a[x].push_back(y);
a[y].push_back(x);
}
// rep(i,1,n){
// cout << i << ":";
// rep(j,0,a[i].size()-1){
// cout << a[i][j] << ' ';
// }
// cout << endl;
// }
//
rep(i,1,n){
if(!b[i]){
dfs(i);
ans++;
}
}
cout << ans;
return 0;
}