bitset
lzk_1049668876
stay hungry stay foolish
展开
-
【Matrix multiplication 】矩阵乘法之bitset优化
请教了大佬bitset的优美用法——矩阵乘法复杂度降低到(n^3/64约等于n^2)以A*B=C(mod 3)的矩阵乘法为例:方法:模拟了这样一个情况:bitset <>a[3][i][j],a[k][i][j]表示模为矩阵a[i][j]的状态是否为k,是为1,否为0,同理bitset<>b[3][i][j]比如A[1]={1,2,0,1},第1列B[1...原创 2018-07-20 18:30:38 · 1189 阅读 · 0 评论 -
【bzoj 3687 简单题】【bitset的dp背包优化】【bitset的妙用】
【题意】求n个数的所有子集的和的异或值【分析】 要求计算子集算术和的异或和。首先我们设dp[i]表示由这n个数能有多少种方案组成i,显然这样dp[1~sum]就将所有的子集和统计完了,那么计算的时候只要判断(dp[i]&1)就有ans^=i。这样的复杂度是sum*n,对于n=10^3,sum=2*10^6是处理不了的。那我们回过头看看这个dp决策,假设前i个数组成的是dp...原创 2018-10-06 20:19:07 · 369 阅读 · 0 评论 -
【codeforces 981E. Addition on Segments】【线段树】【bitset 01背包的妙用优化】【好题】【操作集区间的最大值能否构成】
【链接】http://codeforces.com/contest/981/problem/E【题意】 给定q个区间加的操作,求出这q个操作的所有子集的所有最大值,在[1,n]的范围内【分析】 要知道一个数能否可由某个操作集得到,只要知道对于某个位置上的数的操作中能否构成这个数(好像口胡了)。 对于一个数,我们可以知道能对它进行的所有操作,这个数你组成的数的所有可能性...原创 2018-10-06 21:17:05 · 233 阅读 · 0 评论