绿叶衬红花(玄关)

B3644 【模板】拓扑排序 / 家谱树

xiaoke2021 @ 2024-06-22 15:49:00

BFS+拓扑喜提86pts的好成绩,以及一个离谱的报错信息:

Wrong Answer.wrong output format Unexpected end of file - int32 expected

#include<bits/stdc++.h>
#include<queue>
using namespace std;
int n;
int to[100+5],nxt[100+5],head[100+5];
int degree[100+5];
int cnt;
queue<int> q;
bool vis[100+5];
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        int k;
        cin>>k;
        while(k!=0){
            to[++cnt]=k;
            nxt[cnt]=head[i];
            head[i]=cnt;
            degree[to[cnt]]++;

            cin>>k;
        }
    }for(int i=1;i<=n;i++)
        if(degree[i]==0)
            q.push(i);
    while(!q.empty()){
        int u=q.front();
        q.pop();
        vis[u]=true;
        cout<<u<<" ";
        for(int i=head[u];i;i=nxt[i]){
            if(!vis[to[i]]){
                degree[to[i]]--;
                if(degree[to[i]]==0) q.push(to[i]);
            }
        }
    }return 0;
}

by BGM114514 @ 2024-06-22 15:53:00

@xiaoke2021 这个东西说的是你的输出前面是对的,但是输出到一半就没了


by xiaoke2021 @ 2024-06-22 15:57:56

@BGM114514 thx,已过。

链式前向星的数组开小了,我是SB

此贴结。


|