bzoj3892[Usaco2014 Dec]Marathon 题意: 在二维平面上有N个点,从(x1,y1)到(x2,y2)的代价为|x1-x2|+|y1-y2|。求从1号点出发,按从1到N的顺序依次到达每个点的最小总代价。你有K次机会可以跳过某个点,不允许跳过1号点或N号点。n≤500。 题解: ...
分类:
其他好文 时间:
2016-09-16 15:33:06
阅读次数:
159
瞎DP一波。 f[i][j]:表示已到达或跳过前i个点,总共跳了j个点,并且目前在第i个点的最小总代价。 f[i][j]=min{ f[k][j-(i-k-1)] }+dis(k,i),(dis(k,i)表示两点间距离。 时间复杂度O(n^3)本来以为过不了的。。 1 #include<cstdio ...
分类:
其他好文 时间:
2016-06-18 16:59:12
阅读次数:
170
题目大意:给定n个点,定义从一个点到另一个点的距离为曼哈顿距离,要求从点1依次走到点n,中途可以跳过k个点不走,求最小距离和
令f[i][j]表示从第一个点走到第i个点中途跳过j次的最小距离和
则有f[i][j]=min{f[i-k-1][j-k]+dis[i-k-1][i]}
时间复杂度O(n^3)
#include
#include
#include
#include
#def...
分类:
其他好文 时间:
2015-02-27 21:37:46
阅读次数:
233
题解
——Silver
f[i][j]表示到第i个跳过了j个的最小值
然后暴力从前转移。
它的时间复杂度是1.25亿,但是常数远远远远小于1
——Bronze
跟银组的一样,只不过改改数组大小,然后m直接赋值1就好了。
银组代码:
#include
#include
#include
#include
#include
#define N 505
#define...
分类:
其他好文 时间:
2015-02-27 18:25:22
阅读次数:
192