题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=2306 题解 倍增 Floyd. 令 \(f[i][j][k]\) 表示走了 \(2^i\) 步,从 \(j\) 到 \(k\) 的距离最大值. 然后转移就是 \(f[i][j][k] = \max\limits_{l=1}^n f[i-1][j][l] + p \cdot f[i-1][l][k]\). 另外要每一个点建立一个长度为 \(0\) 的自环,用来统计总的最大值. #include…
Description 有向图 G有n个顶点 1,  2, …,  n,点i 的权值为 w(i).现在有一只蚂蚁,从给定的起点 v0出发,沿着图 G 的边爬行.开始时,它的体力为 1.每爬过一条边,它的体力都会下降为原来的 ρ 倍,其中ρ 是一个给定的小于1的正常数.而蚂蚁爬到某个顶点时的幸福度,是它当时的体力与该点权值的乘积. 我们把蚂蚁在爬行路径上幸福度的总和记为 H.很显然,对于不同的爬行路径,H 的值也可能不同.小 Z 对 H 值的最大可能值很感兴趣,你能帮助他计算吗?注意,蚂蚁爬行的路…
题目描述 一张n个点的有向图,每个点有一个权值.一开始从点$v_0$出发沿图中的边任意移动,移动到路径上的第$i$个点 输入 每一行中两个数之间用一个空格隔开. 输入文件第一行包含两个正整数 n,  m,分别表示 G 中顶点的个数和边的条数. 第二行包含 n个非负实数,依次表示 n个顶点权值 w(1), w(2), …, w(n). 第三行包含一个正整数 v0,表示给定的起点. 第四行包含一个实数 ρ,表示给定的小于 1的正常数. 接下来 m行,每行两个正整数 x, y,表示<x, y>是G的…
这个有环的情况非常的讨厌,一开始想通过数学推等比数列的和,但是发现比较繁就不做了. 然后挖掘这题性质. 数据比较小,但是体力可以很接近1(恼怒),也就是说可能可以跳很多很多步.算了一下,大概跳了2e7次左右这个体力才缩到1e-14左右,这时已经几乎不会影响答案惹.也就是说,点比较少,有没有暴力做法? 发现从一个点假设满体力开始跳若干步,有最大价值的方案,如果前面一个点跳若干步过来,再在这个点以某个$x∈(0,1)$的体力开始,那么原来的最大的方案还是最大的,只要乘上一开始这个体力就好了.这说明答…
Description 有向图 G有n个顶点 1, 2, -, n,点i 的权值为 w(i).现在有一只蚂蚁,从 给定的起点 v0出发,沿着图 G 的边爬行.开始时,它的体力为 1.每爬过一条 边,它的体力都会下降为原来的 ρ 倍,其中ρ 是一个给定的小于1的正常数.而 蚂蚁爬到某个顶点时的幸福度,是它当时的体力与该点权值的乘积. 我们把蚂蚁在爬行路径上幸福度的总和记为 H.很显然,对于不同的爬行路 径,H 的值也可能不同.小 Z 对 H 值的最大可能值很感兴趣,你能帮助他计算 吗?注意,蚂蚁爬…
2306: [Ctsc2011]幸福路径 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 912  Solved: 437 Description 有向图 G有n个顶点 1,  2, …,  n,点i 的权值为 w(i).现在有一只蚂蚁,从给定的起点 v0出发,沿着图 G 的边爬行.开始时,它的体力为 1.每爬过一条边,它的体力都会下降为原来的 ρ 倍,其中ρ 是一个给定的小于1的正常数.而蚂蚁爬到某个顶点时的幸福度,是它当时的体力与该点权值的乘积…
[BZOJ2306]幸福路径(动态规划,倍增) 题面 BZOJ 题解 不要求确切的值,只需要逼近 显然可以通过移动\(\infty\)步来达到逼近的效果 考虑每次的一步怎么移动 设\(f[i][j]\)表示走\(i\)步到了\(j\)能够得到的最大权值 \(f[i][v]=max(f[i-1][u])+W[v]*p^i,(u,v)\in G\) 这样的复杂度是\(O(T(n+m))\),\(T\)是自己设定的步数 但是这样子逼近精度很慢 假设\(p=0.999999\),大概要\(10^7\)步…
题目描述 有向图 G有n个顶点 1, 2, …, n,点i 的权值为 w(i).现在有一只蚂蚁,从 给定的起点 v0出发,沿着图 G 的边爬行.开始时,它的体力为 1.每爬过一条 边,它的体力都会下降为原来的 ρ 倍,其中ρ 是一个给定的小于1的正常数.而 蚂蚁爬到某个顶点时的幸福度,是它当时的体力与该点权值的乘积. 我们把蚂蚁在爬行路径上幸福度的总和记为 H.很显然,对于不同的爬行路 径,H 的值也可能不同.小 Z 对 H 值的最大可能值很感兴趣,你能帮助他计算 吗?注意,蚂蚁爬行的路径长度可…
Description 有向图 G有n个顶点 1, 2, -, n,点i 的权值为 w(i).现在有一只蚂蚁,从 给定的起点 v0出发,沿着图 G 的边爬行.开始时,它的体力为 1.每爬过一条 边,它的体力都会下降为原来的 ρ 倍,其中ρ 是一个给定的小于1的正常数.而 蚂蚁爬到某个顶点时的幸福度,是它当时的体力与该点权值的乘积. 我们把蚂蚁在爬行路径上幸福度的总和记为 H.很显然,对于不同的爬行路 径,H 的值也可能不同.小 Z 对 H 值的最大可能值很感兴趣,你能帮助他计算 吗?注意,蚂蚁爬…
题目大意:一个有向图,n(<=100)个点求一条长度>=m(<=10^18)的路径最少经过几条边. 一开始以为是矩乘,蓝鹅当时还没开始写,所以好像给CYC安利错了嘿嘿嘿QWQ 第一眼看到这题就想到了某题(戳我),最后只想出一半... 倍增floyd:f[p][i][j]表示走了2^p条边,从i到j的最长路径,然后则有:f[p][i][j]=max(f[p][i][j],f[p-1][i][k]+f[p-1][k][j]); 当跑倍增floyd的时候,1到某个点路径长度>=m则记录p…