题目 分析 这种题不会做 吃枣药丸。。。。。 想到状压已经经过的点。 然后更新时枚举两个点加进去。 复杂度$ {O(2^n \times n^2)}$。 凉凉。 真正的做法是每一个状态只要找到一组解就break。这样可以省掉一层n。 大致上就像lrj紫书的dp例题一样,反正这个点都要选,那就先选了他 ...
分类:
其他好文 时间:
2018-08-24 02:00:07
阅读次数:
140
UVA1218:https://www.luogu.org/problemnew/show/UVA1218 刷紫书DP题ing 思路 参考lrj紫书 ~~不喜勿喷~~ 1. d(u,0):u是服务器,孩子是不是服务器均可 2. d(u,1):u不是服务器,u的父亲是服务器,u的孩子不能是服务器 3. ...
分类:
其他好文 时间:
2018-08-07 22:54:04
阅读次数:
155
UVA11584 https://www.luogu.org/problemnew/show/UVA11584 暑假开始刷lrj紫/蓝书DP题 这几天做的一道 思路 代码 #include<iostream> #include<cstring> #include<cstdio> #include<a ...
分类:
其他好文 时间:
2018-08-05 13:02:23
阅读次数:
129
先看一下lrj的大白书上的讲解 emm。。。我是看完之后直接看的模板题代码。。。居然看懂。。。行吧。。 就是先判断 能不能联通 如能联通 就求出每个点的最小前驱边 求完之后 看有没有环 如有环 缩点更新 然后一直重复 直至无环且联通。。 ...
分类:
其他好文 时间:
2018-08-04 11:51:38
阅读次数:
173
题面在这里! lrj蓝书经典题。 可以先dp出来每个晚上输的概率,然后随便概率生成函数就可以算出来期望天数。 一个更简单的方法是解方程,设x为期望天数,p为没晚上输的概率,然后过程就如程序开头的备注了。 ...
分类:
其他好文 时间:
2018-07-11 14:50:46
阅读次数:
185
#include #include #include using namespace std; const int maxn = 1000 + 5; // at most 1000 lowercase characters // union find set, each set is a tree ... ...
分类:
其他好文 时间:
2018-01-21 01:06:11
阅读次数:
167
题目 题目 分析 跟着lrj学的,理解了,然而不是很熟,还是发上来供以后复习 代码 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 const int maxn=1005; 5 6 struct Point 7 { 8 int x,y; 9 ...
分类:
其他好文 时间:
2018-01-20 00:21:50
阅读次数:
203
题目 题目 分析 一开始不信lrj的话,没判联通,果然T了。 没必要全部跑一遍判,只需要判断一下有没有点与n联通,邻接表不太好判,但无向图可以转换成去判n与什么联通。 关于为什么要判,还是因为数据造的强,造了许多之前的节点情况巨多,然而所有节点都不和中点连接的情况。。。。 ...
分类:
其他好文 时间:
2017-12-28 21:51:33
阅读次数:
154
题目 题目 分析 IDA 大法好,抄了lrj代码。 代码 cpp include include include using namespace std; const int maxans=14; int n,a[maxans+1]; bool ...
分类:
其他好文 时间:
2017-12-26 19:06:47
阅读次数:
144
题目 题目 分析 get一下IDA 的技巧,感觉总体来说不难,主要是剪枝比较难想。 这是lrj的代码,比较通俗易懂,关键就是选定一个区间再取出来,插入到一个位置,接下来转移到这个状态。 代码 cpp include using namespac ...
分类:
其他好文 时间:
2017-12-19 01:37:33
阅读次数:
104