摘要:
传送门 以 去掉多少个 为阶段不好做。 去掉 k 个也可以变成选 n - k 个 f[i][j] 表示前 i 个数中 选 j 个的最优解,a[i] 必选 f[i][j] = min(f[i][j], f[k][j - 1] + abs(b[k] - b[i])) (2 <= j <= min(i, 阅读全文
posted @ 2017-05-24 16:13
zht467
阅读(122)
评论(0)
推荐(0)
摘要:
传送门 幼儿园DP。 ——代码 1 #include <cstdio> 2 #include <iostream> 3 4 const int MAXN = 2001; 5 int n, m, ans = ~(1 << 31); 6 int a[MAXN][MAXN], f[MAXN][MAXN]; 阅读全文
posted @ 2017-05-24 15:18
zht467
阅读(99)
评论(0)
推荐(0)
摘要:
传送门 和奶牛那个题很像,每一行状态互不影响,也就是求 n 遍DP 不过高精度非常恶心,第一次写,调了我一上午。 ——代码 1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 5 struct Big_int 6 { 7 阅读全文
posted @ 2017-05-24 11:35
zht467
阅读(138)
评论(0)
推荐(0)
摘要:
传送门 f[i][j][k] 表示 左右两段取到 i .... j 时,取 k 次的最优解 可以优化 k 其实等于 n - j + i 则 f[i][j] = max(f[i + 1][j] + a[i] * (n - j + i), f[i][j - 1] + a[j] * (n - j + i) 阅读全文
posted @ 2017-05-24 08:14
zht467
阅读(135)
评论(0)
推荐(0)

浙公网安备 33010602011771号