摘要: 似乎是弱化的qtree3。树剖什么的非常无脑。考虑离线。并查集维护每个点的最近打标记祖先,倒序处理,删除标记时将其与父亲合并即可。 阅读全文
posted @ 2018-10-31 22:40 Gloid 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 设f[i][j][x][y]为安排了i个男孩j个女孩,后缀最大男孩-女孩数为x,最大女孩-男孩数为y的方案数。转移显然。 阅读全文
posted @ 2018-10-31 21:52 Gloid 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 如果n、m、k都是2的幂次方,答案非常好统计。于是容易想到数位dp,考虑每一位是否卡限制即可,即设f[i][0/1][0/1][0/1]为第i位是/否卡n、m、k的限制时,之前的位的总贡献;g[i][0/1][0/1][0/1]为第i位是/否卡n、m、k的限制时,之前的位的方案数。为了方便可以改为统 阅读全文
posted @ 2018-10-31 21:24 Gloid 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 首先求出每个女性接受某个男性的概率。这个概率显然是一个无穷等比数列求和。 然后按编号从小到大考虑每个女性,维护出每个男性被选择的期望次数,BIT上查询后缀和即可。 需要long double。 阅读全文
posted @ 2018-10-31 15:19 Gloid 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 逐个去除限制。第四个限制显然可以容斥,即染恰好c种颜色的方案数=染至多c种颜色的方案数-染至多c-1种颜色的方案数+染至多c-2种颜色的方案数…… 然后是限制二。同样可以容斥,即恰好选n行的方案数=至多选n行的方案数-至多选n-1行的方案数+至多选n-2行的方案数…… 限制三同理。即容斥套容斥套容斥 阅读全文
posted @ 2018-10-31 14:35 Gloid 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 考虑在每个点的出边中删除哪些。如果其出边所指向的点中存在某点能到达另一点,那么显然指向被到达点的边是没有用的。于是拓扑排序逆序处理,按拓扑序枚举出边,bitset维护可达点集合即可。 阅读全文
posted @ 2018-10-31 10:58 Gloid 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 显然若右端点确定,gcd最多变化log次。容易想到对每一种gcd二分找最远端点,但这样就变成log^3了。注意到右端点右移时,只会造成一些gcd区间的合并,原本gcd相同的区间不可能分裂。由于区间只有log个,暴力即可。 阅读全文
posted @ 2018-10-31 00:46 Gloid 阅读(130) 评论(0) 推荐(0) 编辑