![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
dp
THE___BEST
这个作者很懒,什么都没留下…
展开
-
UVa 437. The Tower of Babylon
把所有的正方体形态全求一遍,然后就是裸DAG了#include #include #include #include #include #include using namespace std;const int INF = 0x7fffffff;const int maxn = 300;struct node{ int c, k, g; void sc(i原创 2015-09-20 22:25:49 · 356 阅读 · 0 评论 -
1330 - City Game
好题,但是刘汝佳老师的思路更叼!#include #include #include #include using namespace std;const int maxn = 1000 + 7;int mat[maxn][maxn], up[maxn][maxn], left[maxn][maxn], right[maxn][maxn];int T, m, n;int ma原创 2016-01-25 15:15:00 · 342 阅读 · 0 评论 -
10534 - Wavio Sequence
前后都来一遍最长上升子序列。注意要用nlogn复杂度的算法#include #include #include #include #include using namespace std;const int maxn = 10000 + 5;const int INF = ~0U >> 1;int a[maxn], dp1[maxn], dp2[maxn];int d[max原创 2016-02-15 09:51:25 · 380 阅读 · 0 评论 -
nlogn 最长上升子序列
#include #include #include #include #include using namespace std;const int maxn = 500;const int INF = ~0U >> 1;int a[maxn], d[maxn]; /// a原数据 d[i] 表示长度为i的上升子序列里面最大的那个数int n;int main() {原创 2016-02-04 17:38:52 · 353 阅读 · 0 评论 -
HDU 4081 次小生成树模板题
先求最小生成树,然后对于最小生成树这个图中的所有点对,求出任意两点之间的所有路径上的最大边,注意是对于构造出来的最小生成树这个图来说。然后枚举删每一条边,求最优解。#include #include #include #include #include #include #include using namespace std;const int maxn = 10原创 2016-04-08 21:18:37 · 417 阅读 · 0 评论