ZOJ1027 Travelling Fee(DP+SPFA)】的更多相关文章

给一张有向无环图,边都有花费,从某点到某点走的那条路径上的那一条花费最多的边可以省掉,问从起点到终点的最少花费的多少, 往DP想的话,就可以写出这个状态dp[u][mx],表示到达u点已经省掉的花费为mx的最少花费. 用SPFA更新转移方程..或者理解成队列+我为人人的转移..其实这题这样子也能解有环图. 看了别人博客,发现还有三种解法: 枚举每一条边作为省掉的边,n次SPFA.这方法简洁,可惜想不出= = 跑Dijkstra,根据记录到每一点时的最长边更新,正确性不懂.. Floyd+DP:加…
dp[u][t]表示从起点出发,到达i点且用了t次magic boot时的最短时间, 方程如下: dp[v][t]=min(dp[v][t],dp[u][t]+dis[u][v]); dp[v][t]=min(dp[v][t],dp[u][t-1]) (dis[u][v]<=l) 放进SPFA更新,相当于一个二维的最短路,解决DP在非DAG下的有后效性的问题. #include<cstdio> #include<cstring> #include<queue> #…
传送门 看到求方案数,应该很容易想到dp f[u][i]表示到点u,且比到u的最短距离多i的方案数 那么需要先预处理dis数组,spfa或者堆优化的dijk 因为考虑到dp的顺序,f[u][i]转移到f[v][j]时,j不可能小于i 所以需要从0到k枚举i,然后从最后一个点开始记忆化搜索 至于判断0环,只需要在记忆化搜索的时候加一个栈即可 1A的代码,哈哈 #include <queue> #include <cstdio> #include <cstring> #in…
传送门 预处理cost[i][j]表示从第i天到第j天起点到终点的最短距离 f[i]表示前i天到从起点到终点的最短距离 f[0] = -K f[i] = min(f[i], f[j - 1] + cost[j][i] + K) #include <queue> #include <cstdio> #include <cstring> #include <iostream> #define N 1001 #define min(x, y) ((x) <…
1003: [ZJOI2006]物流运输 题目:传送门 题解: 可以用spfa处理出第i天到第j都走这条路的花费,记录为cost f[i]表示前i天的最小花费:f[i]=min(f[i],f[j-1]+cost*(i-j+1)+k); 水一发代码: #include<cstdio> #include<cstring> #include<cstdlib> #include<cmath> #include<algorithm> #define qre…
取数字(dp优化) 给定n个整数\(a_i\),你需要从中选取若干个数,使得它们的和是m的倍数.问有多少种方案.有多个询问,每次询问一个的m对应的答案. \(1\le n\le 200000,1\le m\le 100,1\le q\le 30,-10^9\le a_i\le 10^9\). 首先有一个暴力dp:\(f[i][j]\)表示选到第i个数,和mod m是j的方案数.但是显然,这个dp是\(O(nm)\)的,然后就tle了. 换一个思路dp?由于我们只需要一个数模m的值,可以先把所有数…
洛谷P2507 [SCOI2008]配对 题解(dp+贪心) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1299251 链接题目地址:洛谷P2507 [SCOI2008]配对 感觉是道很好的推断题 贪心 想到贪心的结论就很容易,没想到就很难做出来了 结论:对\(A,B\)数组分别排序之后,在\(A\)中选第\(i\)个数,与之配对的数一定在\(B[i-1]\)~\(B[i+1]\)内 其实证明是很好证的,在与你是否往这方面想了... 因为题目有一个很…
[Codeforces722E] Research Rover (dp+组合数学) 题面 给出一个N*M的方格阵,从(1,1)出发,到(N,M)结束,从(x,y)只能走到(x+1,y)或(x,y+1).方格阵上还有K个特殊点,初始时给出的分数t每经过一个特殊点就会变成\([\frac{t}{2}]\).求到(N,M)时得分的期望.保证(1,1)和(N,M)不是特殊点.\(N,M≤100000,\ K≤2000,\ t≤1000000\) 分析 考虑根据特殊点dp.把(1,1)和(n,m)也看作特…
描述C国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市.任意两个城市之间最多只有一条道路直接相连.这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为1条.C国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同.但是,同一种商品在同一个城市的买入价和卖出价始终是相同的.商人阿龙来到C国旅游.当他得知“同一种商品在不同城市的价格可能会不同”这一信息之后,便决定在旅游的同时,利用商品在不同城市中…
As we know, Rikka is poor at math. Yuta is worrying about this situation, so he gives Rikka some math tasks to practice. There is one of them: Yuta has nn positive A1−AnA1−An and their sum is mm. Then for each subset SS of AA, Yuta calculates the sum…