- 博客(8)
- 收藏
- 关注
原创 【TCO 2013 WildCard】SemiMultiple
Description定义一个非负数 是 长度下的 的半倍数,为 不是 的倍数,且 是 的倍数。问有多少个 长度下的 的半倍数。DifficultyMainAlgorithm容斥DPComplexitySolution比较难……我们肯定是要对每个余数分别讨论的,可以用 的DP很轻松地把 以下的
2015-09-26 10:06:50 631
原创 【TCO2013 3B】ToastJumping
Description选择尽量少的模长不超过 的整向量,使得他们的和为 .DifficultyMainAlgorithm凸包Minkowski 和ComplexitySolution首先,跳跃一步能跳跃到的点是一个凸包内的整点。然后,由于每一步是相同的,可以证明第 次跳跃产生的图形是第 次跳跃产生的图形与第 次
2015-09-24 16:24:38 684
原创 【TCO2013 Semifinal 2】 OneBlack
Description一个 的网格图,一些格子有障碍。一条合法路径的定义是从 到 的,一共走 步的路径。你要把一些格子染黑,使得每一条合法路径上恰好有一个黑点。问合法方案数。DifficultyMainAlgorithm对偶图DPComplexitySolution首先我们把能从 到的、能到 的点抠出来。其余
2015-09-24 13:53:38 745
原创 【TCO 2013 3A】TrichyInequality
3A TrichyInequalityDescription求出满足 ∑mi=1xi≤s,∀i≤m,xi>0,∀i≤n,xi≤t . 的向量 X 的解数。Difficulty★★★MainAlgorithm矩乘加速ComplexityO((m−n)3logn)Solution标解给的 O((m−n)2) 太科幻了…
2015-09-23 15:41:00 976
原创 【TCO 2012】WildCard SemiMultiple 区间DP
很好的区间DP题目。Description给出两个串A,B。每次可以往A中插入一个字符。将每次操作后的A串记为一个序列。求从A串变为B串的不同序列数量。Difficulty★★★★Main AlgorithmDPComplexitySolution不妨先考虑一个简单的情况,即A为空串。即每次插入一个
2015-09-22 20:50:22 597
原创 【TCO 2013】Litpanels
2B LitPanelsDescription一个 的棋盘,选择两个 的矩形(可以相交),在矩形内任意染黑格子,问最后棋盘状态的方案数。不妨先把结果分类。对答案的状态用一个 的包围盒包裹住,分别讨论 包围盒的方案数。考虑我们需要满足什么条件。1、包围盒的每一条边都必须有至少一个染色点。2、能用两个 的矩形包裹所有染色点。将第二个条件转化一下,考虑到
2015-09-22 15:39:37 538
原创 【TCO2A ThePowers】容斥原理
考虑两个数的次幂得到了相同结果,.则 . 故 是一个整数。同理可证 是一个整数。那么 我们发现,只有有着共同的 的数才会产生冲突。而且冲突的数量与 无关。只与最大的 的次数有关。我们预处理出来拥有 次的 能产生的贡献。即 的不同答案数。其中 .那么就变为 的不同答案数。由于不同的 x 能达到的数不同,为了方便处理,我们分别处理 中的数个数。这部分需要
2015-09-21 19:39:03 498
原创 【hdu5304】生成树计数—基尔霍夫矩阵 DP
给一个无向图,求有多少个子图是基环树。枚举环后缩点,再求生成树计数。2^n枚举环上的点,dp预处理出每个集合的环的个数(默认以编号最小的点为起点),用f[i][s]表示环尾为i,点集为s。#include #include #include #include #include #define Rep(i, x, y) for (int i = x; i <= y; i ++)
2015-09-12 10:32:25 1484
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人