最短路径
ixRic
ixRic
展开
-
[APIO 2013] 机器人(斯坦纳树) | 错题本
文章目录题目分析代码题目[APIO 2013] 机器人分析先记搜出每个格子往上下左右推一下能滑到哪里。然后类似于斯坦纳树,定义 dp[l][r][x][y]dp[l][r][x][y]dp[l][r][x][y] 表示把 l∼rl \sim rl∼r 的所有机器人搞到 (x,y)(x, y)(x,y) 合并的最小代价,区间 DP 外加四联通的转移,一种转移情况是 dp[l][m][x][y]+dp[m+1][r][x][y]dp[l][m][x][y] + dp[m + 1][r][x][y]dp[原创 2020-11-26 11:33:40 · 189 阅读 · 0 评论 -
[CodeForces 757F] Team Rocket Rises Again(最短路径图 + 支配树) | 错题本
文章目录题目分析错因代码题目[CodeForces 757F] Team Rocket Rises Again分析建出最短路径图(是个 DAG)的支配树,找到除起点外支配的点最多的点即可。错因Tid 打成 Dfn;用链式前向星,To 和 Next 数组的大小没有开到 mmm;以为是求要删的点(样例还能过)。代码#include <bits/stdc++.h>typedef long long LL;typedef std::pair<int, int>原创 2020-07-07 15:36:37 · 195 阅读 · 0 评论 -
[NOI Online #2 入门组] 魔法(矩阵加速) | 错题本
文章目录题目分析错因代码题目[NOI Online #2 入门组] 魔法分析dp[i][j][k]dp[i][j][k]dp[i][j][k] 表示 iii 到 jjj 用 kkk 次魔法的最小代价,f[i][j]f[i][j]f[i][j] 表示 iii 到 jjj 用一次魔法的最小代价:dp[i][j][k]=min{dp[i][u][k−1]+f[u][j],f[i][u]+dp[u][j][k−1]}dp[i][j][k] = \min \{dp[i][u][k - 1] + f[u][原创 2020-07-04 16:30:46 · 176 阅读 · 0 评论 -
【牛客CSP-S提高组赛前集训营5】B 十二桥问题(最短路+状压DP)
文章目录题目分析代码题目十二桥问题分析k≤12k\leq12k≤12,果断考虑状压。将所有必须走的边的端点u,vu,vu,v视为关键点,为每个关键点跑Dijkstra,然后状压DP。dp[S][i][0]dp[S][i][0]dp[S][i][0]表示走完集合为SSS的边,最后停在第iii条边的uuu点的最小代价;dp[S][i][1]dp[S][i][1]dp[S][i][1]表示...原创 2019-11-08 22:30:46 · 280 阅读 · 0 评论 -
【NOIP普及组】2016模拟考试(10.29)——文化之旅
问题 D: 文化之旅(culture.cpp)时间限制: 1 Sec 内存限制: 128 MB题目描述有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不能到达其他有这种文化的国家)。不同的国家可能有相同的文化。不同文化的国家对其他文化的看法不同,有些文化会排斥外来文化(即如果他学习了某种文化,则他不能到原创 2016-11-01 14:09:28 · 706 阅读 · 0 评论 -
【图】最短路径——Floyed算法和Dijkstra算法
最短路径问题(floyed.cpp dijkstra.cpp)题目描述平面上有n个点(n输入第1行:1个整数n第2..n+1行:每行2个整数x和y,描述了一个点的坐标第n+2行:1个整数m,表示图中连线的数量接下来有m行,每行2个整数i和j,表示第i个点和第j个点之间有连线最后1行:2个整数s和t,分别表示源点和目标点输出第1行:1个浮点数,表示从s原创 2016-10-18 19:25:20 · 2548 阅读 · 0 评论