Submission #20945844
Source Code Expand
#include<bits/stdc++.h>
using namespace std;
const int N=2e5+5,mod=998244353;
int n,m,k,cas;
int h[N],ne[N<<1],to[N<<1],tot;
int idx[N],t,cid,a[N],cir[N];
long long c[N];
bool v[N];
void add(int u,int v)
{
ne[++tot]=h[u];
to[h[u]=tot]=v;
}
int dfs(int u,int f)
{
idx[u]=t;
int s=0;
for(int i=h[u],y=to[i];i;y=to[i=ne[i]])
{
if(f^i&&!v[y])
{
if(!idx[y])
s=s^dfs(y,i^1);
else
s=u,cir[++cid]=u,v[u]=1;
}
}
return s;
}
void work(int u)
{
cid=0;c[++t]=1;
dfs(u,0);
}
int main()
{
ios::sync_with_stdio(0);
cin>>n;
long long ans=1;tot=1;
for(int i=1;i<=n;i++)
cin>>a[i],add(i,a[i]),add(a[i],i);
for(int i=1;i<=n;i++)
if(!idx[i])
work(i);
for(int i=1;i<=t;i++)
ans=(ans+ans)%mod;
cout<<(ans-1+mod)%mod<<endl;
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | B - Special Subsets |
| User | Summerzy2 |
| Language | C++ (GCC 9.2.1) |
| Score | 400 |
| Code Size | 822 Byte |
| Status | AC |
| Exec Time | 55 ms |
| Memory | 23484 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 400 / 400 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | s1.txt, s2.txt, s3.txt |
| All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, s1.txt, s2.txt, s3.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01.txt | AC | 6 ms | 3552 KiB |
| 02.txt | AC | 2 ms | 3528 KiB |
| 03.txt | AC | 3 ms | 3544 KiB |
| 04.txt | AC | 2 ms | 3456 KiB |
| 05.txt | AC | 1 ms | 3496 KiB |
| 06.txt | AC | 45 ms | 9140 KiB |
| 07.txt | AC | 35 ms | 9080 KiB |
| 08.txt | AC | 43 ms | 9180 KiB |
| 09.txt | AC | 2 ms | 3472 KiB |
| 10.txt | AC | 34 ms | 10752 KiB |
| 11.txt | AC | 54 ms | 23484 KiB |
| 12.txt | AC | 48 ms | 17152 KiB |
| 13.txt | AC | 45 ms | 10936 KiB |
| 14.txt | AC | 49 ms | 17292 KiB |
| 15.txt | AC | 52 ms | 17108 KiB |
| 16.txt | AC | 51 ms | 16096 KiB |
| 17.txt | AC | 35 ms | 11392 KiB |
| 18.txt | AC | 47 ms | 18168 KiB |
| 19.txt | AC | 55 ms | 19868 KiB |
| 20.txt | AC | 51 ms | 21008 KiB |
| 21.txt | AC | 32 ms | 11692 KiB |
| 22.txt | AC | 33 ms | 11296 KiB |
| s1.txt | AC | 2 ms | 3524 KiB |
| s2.txt | AC | 2 ms | 3492 KiB |
| s3.txt | AC | 3 ms | 3512 KiB |