bfs
小元勋
生生不息 摸鱼不止
展开
-
[APIO2010]巡逻--树的直径bfs和dp求法
Luogu 3629 题目分析: 分析可知,加一条边会形成环,我们在树的直径两端点加一条,距离减得最多 当要加两条边时,如果两条边不重叠 如果重叠,考虑两条边都必须走一次,所以我们可以在第一次找出直径后,将路径上的权值变为-1,若边重叠,则减去−1-1−1之后相当于加一 所以: if(m==1)ans=2∗(n−1)−len1+1if(m==1) ans=2*(n-1)-len...原创 2019-08-16 16:55:45 · 181 阅读 · 0 评论 -
「一本通 1.4 例 3」Knight Moves -- 双向bfs
Luogu 10028 题目分析: 每次选队列中节点数少的扩展,注意清空 把x打成y,调了很久x打成y,调了很久x打成y,调了很久 Code: #include <bits/stdc++.h> using namespace std; #define maxn 310 int ans,T,n,s_x,s_y,t_x,t_y,d[3][maxn][maxn]; int dx[]=...原创 2019-08-30 16:54:48 · 408 阅读 · 0 评论