摘要:
老早就学过,但发现理解的不是很好 而且发现这个东西细节贼重要 1.缩点 缩点是对于有向图的强联通分量 即在同一个强联通分量中每个点都能到达另一个点 代码: http://www.cnblogs.com/yinwuxiao/p/8444680.html 2.2-sat以及输出方案 对于每个点拆成两个点 阅读全文
摘要:
介绍: 理解起来挺简单的一个东西 基于xor产生的东西 线性基实际上是一个集合 这个集合xor能得到的值和原集合相同 构造方法: 我们用f[i]记录最高位1在第i位的数 插入一个新元素时,我们从最高位开始扫描 如果f[i]是空的,那么f[i]=x 否则x^=f[i] 1.求xor最大值 这个只要贪心 阅读全文
摘要:
题解: 由于之前没有对位运算之间的关系仔细研究过,今天仔细推了一波 首先 我们可以利用not和and推出所有位运算 A or B =not (notA and notB) A xor B= ~((notA and notB)or (A&B)) 而本题中定义的nand 我们会发现 x nand x=~ 阅读全文
摘要:
题解: 烂大街的树形dp?? f[i][j]表示到i点,在i的子树中经过j个,且要返回i点的最小值 g[i][j]表示到i点,在i的子树中经过j个,且不用返回i点的最小值 然后转移做背包就可以了 (注意每个背包的上界为子树大小,这一步就从n^3 >n^2了) 和前几天看的九省联考d1t3的暴力有那么 阅读全文
摘要:
题解: 区间dp 令f[i][j]表示搞好i-j的最小值 首先如果不用涂色 那么可以从f[i][k] f[k+1][j]转移 如果要涂色,那么就从f[i][k][a](表示i-k全为a)+f[k+1][j][a]+1来转移 为什么可以这样做呢 因为染色只会对这一段区间内产生影响,然后枚举区间相当于枚 阅读全文