求助,请教大佬
查看原帖
求助,请教大佬
1305985
Gordon1楼主2024/11/21 18:58
#include<bits/stdc++.h>
using namespace std;
int init[110];
vector<int> a[110];
vector<int> ans;
queue<int> r;
int n;
int aa;
int main()
{
    cin>>n;
    for(int i=1;i<=n;++i)
    {
        while(cin>>aa&&aa!=0)
        {
            a[i].push_back(aa);
            init[aa]++;
        }
    }
    for(int i=1;i<=n;++i)
    {
        if(init[i]==0) r.push(i);
    }
    while(r.size())
    {
        int now=r.front();
        r.pop();
        ans.push_back(now);
        for(int i=1;i<=a[now].size();++i)
        {
            init[a[now][i]]--;
            if(init[a[now][i]]==0) r.push(a[now][i]);
        }
    }
    for(int i=1;i<=n;++i)
        cout<<ans[i]<<" ";
    return 0;
}

#456 WA,求调

2024/11/21 18:58
加载中...