P5022 旅行
发布日期:2021-05-06 16:51:19 浏览次数:23 分类:技术文章

本文共 547 字,大约阅读时间需要 1 分钟。

给定一个树/基环树,求遍历字典顺最小的方案

当原图是一棵树的时候,可以直接贪心的进行操作

当原图是一棵基环树的时候,我们先找到树上的环,然后枚举环上的一条边,将其删去,剩下的就和树上的操作一样了,最后将所有得到的方案进行比较,输出最小的即可

 

代码

#include
using namespace std;const int maxn=5005;int n,m,tot,vis[maxn],out[maxn],ans[maxn];vector
G[maxn];int read(){ int x=0,f=1; char cc=getchar(); while((cc<'0' || cc>'9') && cc!='-') cc=getchar(); if(cc=='-') f=-1,cc=getchar(); while(cc>='0' && cc<='9') { x=x*10+cc-'0'; cc=getchar(); } return x*f;}void dfs(int x,int fa){ ans[++tot]=x; vis[x]=1; for(int k=0;k
out[i]) return 0; if(ans[i]

 

上一篇:【tarjan】P2272 [ZJOI2007]最大半连通子图
下一篇:【最短路】P4408 [NOI2003]逃学的小孩

发表评论

最新留言

很好
[***.229.124.182]2025年04月06日 00时09分35秒