我用kru的,最后帮我找出错误,改掉错误能A。代码:
#include
#include
using namespace std;
int n,sum,e,m,r;
struct node
{
int bv;
int ev;
int w;
}road[50005];
bool cmp(node &a,node &b)
{
return a.w>b.w;
}
void krucal()
{
int i=0,j=0,ni=0,mi=0,point[20003]={0},v1,v2;
while(i=n-1&&mi>=m-1)
break;
v1=road[j].bv;
while(point[v1])
v1=point[v1];
v2=road[j].ev;
while(point[v2])
v2=point[v2];
if(v1!=v2)
{
if(ni>t;
while(t--)
{
scanf("%d%d%d",&n,&m,&r);
int p=0;
for(p=0;p=n-1&&mi>=m-1) break; 这句去掉后就不会WA。。不过你的代码还是会TLE,需要用到并查集优化... |