IT评测·应用市场-qidao123.com技术社区

标题: 食物链的迷惑 [打印本页]

作者: 数据人与超自然意识    时间: 2024-8-14 10:10
标题: 食物链的迷惑
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. const int N=5e4+10;
  4. int p[N],d[N];
  5. int find(int x)
  6. {
  7.     if(p[x]!=x)
  8.     {
  9.         int t=find(p[x]);
  10.         d[x]+=d[p[x]];
  11.         p[x]=t;
  12.     }
  13.     return p[x];
  14. }
  15. int main()
  16. {
  17.     int n,k,res=0;
  18.     cin>>n>>k;
  19.     for(int i=1;i<=n;i++)p[i]=i;
  20.     while(k--)
  21.     {
  22.         int s,x,y;
  23.         cin>>s>>x>>y;
  24.         if(x>n||y>n)res++;
  25.         else{
  26.             if(s==1)
  27.         {
  28.             if(find(x)==find(y)&&(d[x]-d[y])%3)res++;
  29.    
  30.             else if(find(x)!=find(y)) {
  31.                
  32.                 d[find(x)]=d[y]-d[x];p[find(x)]=find(y);
  33.             }
  34.         }
  35.         else{
  36.             if(find(x)==find(y)&&(d[x]-d[y]-1)%3)res++;
  37.             else if(find(x)!=find(y)){
  38.                
  39.                 d[find(x)]=d[y]-d[x]+1; p[find(x)]=find(y);
  40.             }
  41.         }
  42.             
  43.         }
  44.     }
  45.     cout<<res;
  46.     return 0;
  47. }
复制代码
我如果不消
  1. int px=find(x),py=find(y);
复制代码
就会wrong answer。。。

 好难啊。。。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/) Powered by Discuz! X3.4