2025年1146 Topological Order「建议收藏」

1146 Topological Order「建议收藏」题目 题意 在给定有向图中 对于给定查询序列是否是有向图中的一个拓扑序列 记录非法序列下标 tip 模拟拓扑排序 include include using namespace std int in num 1003 0 int temp 1003 0 vector s 1003 int checked int x

题目

题意:在给定有向图中,对于给定查询序列是否是有向图中的一个拓扑序列,记录非法序列下标

tip:模拟拓扑排序

#include
#include
using namespace std;
int in_num[1003]= {0};
int temp[1003]= {0};
vector s[1003];
int checked(int x) {
if(temp[x])
return 1;
for(int i=0; i temp[s[x][i]]--;//去边
return 0;
}
int main() {
int n,m;
cin>>n>>m;
for(int i=0; i int a,b;
cin>>a>>b;
in_num[b]++;//记录b点入度
s[a].push_back(b);//记录a的出边
}
int k;
cin>>k;
vectorans;
for(int i=0; i int flag=0;
for(int l=1; l<=n; ++l)
temp[l]=in_num[l];
for(int j=0; j int a;
cin>>a;
if(checked(a))
flag=1;//只要有一点不符合入度为零,就为不合法
}
if(flag)
ans.push_back(i);
}
cout }
编程小号
上一篇 2025-03-22 11:27
下一篇 2025-01-24 09:17

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/119800.html