QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#835353#8729. TikvaniMatutino0 0ms4096kbC++171.4kb2024-12-28 11:25:492024-12-28 11:26:00

Judging History

你现在查看的是最新测评结果

  • [2024-12-28 11:26:00]
  • 评测
  • 测评结果:0
  • 用时:0ms
  • 内存:4096kb
  • [2024-12-28 11:25:49]
  • 提交

answer

#include<bits/stdc++.h>
#define reg register
// #define int long long
inline int read(){
    reg int x=0,k=1; reg char ch=getchar();
    while (ch<'0'||ch>'9') (ch=='-')&&(k=-1),ch=getchar();
    while (ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar();
    return x*k;
}
inline bool cmin(reg int &x,reg int y){return x>y?x=y,1:0;}
const int N=405,mod=1e9+7;
int n,m,fa[N],vis[N],is[N],efa[N];
struct E{int u,v;}e[N];
std::vector<std::pair<int,int>> G[N];
std::bitset<405> b[N];
void dfs(reg int u){
    vis[u]=1;
    for (auto [v,w]:G[u]) if (!is[w])
        if (!vis[v]) efa[v]=w,fa[v]=u,dfs(v),is[w]=1;
}
signed main(){
    n=read(),m=read();
    for (reg int i=1,u,v;i<=m;i++){
        u=read(),v=read();
        e[i]={u,v},G[u].push_back({v,i});
    }
    reg int ans=0,Ans=1;
    for (reg int rt=1;rt<=n;rt++){
        memset(vis,0,n+1<<2);
        dfs(rt);
        for (reg int i=1;i<=m;i++) if (!is[i]&&vis[e[i].u]&&vis[e[i].v]){
            reg int u=e[i].u,v=e[i].v;
            std::bitset<405> now; now[i]=1;
            while (efa[u]) now[efa[u]]=1,u=fa[u];
            while (efa[v]) now[efa[v]]=1,v=fa[v];
            reg int flg=0;
            for (reg int j=1;j<=m;j++)if (now[j]){
                if (!b[j].count()){b[j]=now,flg=1;break;}
                else now^=b[j];
            }
            ans+=flg;
        }
    }
    ans=m-ans;
    while (ans--) Ans=(Ans+Ans)%mod;
    printf("%d\n",Ans);
    return 0;
}   

詳細信息

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 21
Accepted
time: 0ms
memory: 3748kb

input:

6 5
3 5
2 5
1 6
4 6
2 6

output:

32

result:

ok 1 number(s): "32"

Test #2:

score: 21
Accepted
time: 0ms
memory: 4096kb

input:

6 6
2 5
1 2
3 4
5 6
3 6
1 5

output:

32

result:

ok 1 number(s): "32"

Test #3:

score: 0
Wrong Answer
time: 0ms
memory: 3792kb

input:

6 7
3 6
1 3
3 5
2 3
1 6
2 6
2 5

output:

64

result:

wrong answer 1st numbers differ - expected: '16', found: '64'

Subtask #2:

score: 0
Skipped

Dependency #1:

0%

Subtask #3:

score: 0
Wrong Answer

Test #25:

score: 0
Wrong Answer
time: 0ms
memory: 4012kb

input:

50 50
29 32
3 12
36 41
10 30
6 18
20 27
14 36
4 33
6 7
17 31
33 40
2 49
19 42
3 30
2 18
11 42
21 29
11 23
1 35
32 50
22 46
6 22
42 48
15 23
7 43
11 13
5 9
40 50
25 42
5 31
27 30
1 17
14 48
5 44
35 41
1 23
10 21
40 48
12 36
13 37
23 37
23 43
19 26
6 15
13 45
19 27
17 29
20 38
29 42
26 49

output:

898961331

result:

wrong answer 1st numbers differ - expected: '974740338', found: '898961331'

Subtask #4:

score: 0
Skipped

Dependency #1:

0%