完整代码
```cpp
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pll = pair<ll, ll>;
const int N = 115;
vector<int>g[N];
queue<int>q;
int n, deg[N];
void inint() {
int t;
cin >> n;
for (int i = 1; i <= n; i++) {
while (cin >> t ) {
if (t == 0)
break;
g[i].push_back(t);
deg[t]++;
}
}
}
int main() {
inint();
for (int i = 1; i <= n; i++) {
if (deg[i] == 0) {
q.push(i);
}
}
while (q.size()) {
int u = q.front();
q.pop();
printf("%d ", u);
for (int v : g[u]) {
deg[v]--;
if (deg[v] == 0) {
q.push(v);
}
}
}
return 0;
}
````
by MinLand @ 2024-06-14 14:20:14
你找入度为0的点的时候,找到一个直接break掉了
by yuyc @ 2024-06-14 15:50:24
@[yuyc](/user/239562)
wssb
by MinLand @ 2024-06-17 13:10:26