编程题
### 问题描述
小蓝上完图论课后,小桥给了他一个挑战:
存在 $n$ 个点,$m$ 条边,每条边连接两个点,例如存在一条边为 $(u_i, v_i)$,代表有一条边连接了 $(u_i, v_i)$ 两个点。
小桥请小蓝回答,最少加上多少边,可以使得联通块的数目小于等于 $k$ 个。
联通块:如果某两个点能通过边直接或者间接相连,我们称他们处于一个连通块。
### 输入格式
第一行输入三个整数 $n, m, k$。
接下面 $m$ 行,每行两个整数 $u_i, v_i$。
### 输出格式
一个整数,代表最少加上多少边,可以使得联通块的数目满足要求。
### 样例输入
```
5 5 1
1 2
2 3
1 3
4 5
5 4
```
### 样例输出
```
1
```
### 评测数据范围
$2 \le n, m\le 10^5, 1 \le u_i, v_i \le n, 1 \le k \le n$。