随笔分类 - 基本算法 状态压缩/压位
摘要:【题目】 " 2302. 「NOI2017」整数" 【题意】有一个整数x,一开始为0。n次操作,加上a 2^b,或询问2^k位是0或1。$n \leq 10^6,|a| \leq 10^9,0 \leq b,k \leq 30n$。 【算法】压位+线段树 【参考】 "GXZlegend" 先考虑以每
阅读全文
摘要:【题目】洛谷10月月赛R1 提高组 【题意】给定n*n棋盘和<=16个棋子,给几个棋子种类和攻击范围,现我方只有一马,求能否吃王。 【算法】状压+BFS 【题解】16种棋子中,马不能吃马,直接处理马和王,那么就剩13个棋子,可以压成2^13表示棋盘现有棋子存活状态。 然后对vis[2^13][n][
阅读全文
摘要:【题意】给定n个点的有向图,求可达点对数(互相可达算两对,含自身)。n<=2000。 【算法】强连通分量(tarjan)+拓扑排序+状态压缩(bitset) 【题解】这题可以说非常经典了。 1.强连通分量(scc)内所有点可互达,对答案的贡献为cnt[i]*cnt[i](cnt[i]第i个scc内点
阅读全文
摘要:【算法】 【算法】网络流 【算法】树 【算法】数学 ————【专题】生成树计数(矩阵树定理) ————【专题】计数问题(排列组合,容斥原理,卡特兰数) ————【算法专题】卡特兰数(计数数列) ————【专题】数论 ————【专题】概率和期望 【算法】动态规划 【算法】数据结构 ————【专题】平衡
阅读全文