MLE求助
查看原帖
MLE求助
473635
Nobelium_255楼主2021/4/17 10:08
#include<iostream>
using namespace std;
int n,m,f[10010],e[10010],ans;
int find(int a)
{ if(f[a]==a)
  { return a; }
  return f[a]=find(f[a]);
}
int main()
{ cin>>n>>m;
  for(int i=1;i<=n;i++)
  { f[i]=i; }
  char a; int b,c,p,q;
  for(int i=0;i<m;i++)
  { cin>>a>>b>>c;
    p=find(b);
    q=find(c);
    if(a=='F')
    { f[p]=q; }
    else
    { if(e[b]==0)
      { e[b]=q; }
      else
      { f[q]=e[b]; }
      if(e[c]==0)
      { e[c]=p; }
      else
      { f[p]=e[c]; }
	}
  }
  for(int i=1;i<=n;i++)
  { if(f[i]==i)
    { ans++; }
  }
  cout<<ans;
}

20分,错的点全部都是MLE,看了下题解感觉好像也没找到什么问题啊...

2021/4/17 10:08
加载中...