提交一组hack数据
查看原帖
提交一组hack数据
997134
MINO1楼主2024/4/16 13:14

办校内周赛有人不会并查集,用很多for循环实现并查集部分功能,居然能ac这道题!!

增加hack数据

输入:

1000000

2 3 4 5 6 ...... 1000000 1

输出:

1

下面这段代码输出为0答案错误。

#include<bits/stdc++.h>
using namespace std;
//#define int long long
int a[1000005];
signed main()
{
    int n;
    cin>>n;
    int sum=0;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        a[i]=a[a[i]];
    for(int i=1;i<=n;i++)
        if(a[i]==i)
            sum++;
    cout<<sum;
}
2024/4/16 13:14
加载中...