#include using namespace std; const int INF = 0x3f3f3f3f; struct node { int u,v; int value,num; int flag; } edge[1100]; int n,m; int pre[110]; int resultR[1100],resultB[1100]; bool cmp(node a,node b) { return a.value < b.value; } int Find(int x) { return pre[x] == 0?x:pre[x] = Find(pre[x]); } void Union(int x,int y) { int Fx = Find(x); int Fy = Find(y); if(Fx != Fy) { pre[Fx] = Fy; } } bool visR[1100],visB[1100]; int Kuras(int limit,bool * vis) { int ans = 0; int num = 0; memset(pre,0,sizeof(pre)); for(int i = 0; i= INF) printf("-1\n"); else printf("%d\n",re); } } return 0; }