n 个点 n-1条边 不一定是树
要把它变成一棵树 最少要删除几条边
每删除一条边可以在另外地方造一条边
并查集
#include#include #include #include #include #include using namespace std;#define LL long long#define MAXN 1010#define inf 1000000000int f[MAXN];int find1(int a){ if(a==f[a]) return a; else { int b=find1(f[a]); return f[a]=b; }}int ii[MAXN],jj[MAXN],u[MAXN],v[MAXN];int main(){ int n; while(scanf("%d",&n)!=EOF) { for(int i=1;i<=n;i++) f[i]=i; int cnt=0; for(int i=1;i