上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 36 下一页
摘要: 分析 先对棋盘黑白染色(这是常见套路),我们发现,如果选了一个黑点,那相邻的白点就不能选,反之同理 出现了冲突关系,考虑最大权闭合子图 把黑点看成正权点,白点看成负权点,黑点向相邻白点连边,跑最大权闭合子图即可 代码 cpp include include include include defin 阅读全文
posted @ 2019-02-25 14:53 birchtree 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 分析 最大权闭合子图模板题 把实验获得的收益看成正权点,仪器费用看成负权点,每个实验向所需要的仪器连边 跑最大权闭合子图即可 详见 "https://www.cnblogs.com/birchtree/p/10304793.html" 代码 cpp include include include i 阅读全文
posted @ 2019-02-25 14:50 birchtree 阅读(432) 评论(0) 推荐(0) 编辑
摘要: 题面 "luogu传送门" .gif) .gif) .gif) .gif) 分析 先分块,设块大小为x(之后我们会证明块大小取何值会更优) 步骤1 把所有的数离散化,然后对每个值开一个vector pos[i],pos[i]存储数i出现的位置 我们设查询的区间为[l,r],需要求数v出现的次数,然后 阅读全文
posted @ 2019-02-21 16:56 birchtree 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 法1(区间DP): 首先,我们可以把连续的相等区间缩成一个数,用unique来实现,不影响结果 {1,2,2,3,3,3,5,3,4} {1,2,3,5,3,4} 先从一个极端情况来考虑,a={1,2,3,4,5},此时答案显然为4,从1个点出发,先把它变成和左边的点相等,再 阅读全文
posted @ 2019-02-11 10:42 birchtree 阅读(593) 评论(2) 推荐(1) 编辑
摘要: 题面 "传送门" 分析 通过二分答案,我们显然可以求出数组中最大的数,即等差数列的末项 接着随机取一些数组中的数,对他们两两做差,把得到的差取gcd即为公差 例a={1,5,9,13},我们随机取了1 9 13,两两的差为8,4,12,取gcd为4 已知末项和公差即可求出首项 可以证明错误的概率32 阅读全文
posted @ 2019-02-11 09:08 birchtree 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 我们先考虑n!在10进制下有多少个0 由于10=2 5, 我们考虑n!的分解式中5的指数,答案显然等于$\frac{n}{5}+\frac{n}{5^2}+\frac{n}{5^3}+\dots\frac{n}{5^k}(\frac{n}{5^k}\geq 1,\frac{n 阅读全文
posted @ 2019-02-11 09:02 birchtree 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 答案很好看出,显然是选最大的m k个数 那么如何构造方案呢 我们把最大的m k个数的位置标记为1,其他标记为0 从左到右维护一个ptr,记录有标记的数的个数,如果当前有m个有标记的数,则已经找到一个满足条件的区间分界点,break 这样的操作进行k 1次,由于ptr单调递增, 阅读全文
posted @ 2019-02-11 08:51 birchtree 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 观察题目中的这段伪代码,发现实际上就是求出每个节点的DFS序, 注意 ,要按编号从小到大访问每个节点,所以要对邻接表排序(可以用vector实现) 对询问离线,每个结点保存由该节点出发所有询问 第一次DFS, 求出每个点到根节点的距离,以及DFS序。顺便把每个节点的子树对应的 阅读全文
posted @ 2019-02-09 10:26 birchtree 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 一开始考虑贪心和DP,发现不行 考虑差分: 设d[i]=c[i+1] c[i] (i include include define maxn 100005 using namespace std; int n; int a[maxn]; int b[maxn]; int da 阅读全文
posted @ 2019-02-09 09:46 birchtree 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 这种数据范围比较大的题最好的方法是先暴力打表找规律 通过打表,可以发现规律如下: 定义$x=2^{log_2a+1}$ (注意,cf官方题解这里写错了,官方题解中定义$x=2^{log_2a}$是有问题的 (1) 若$a \neq 2^x 1$ ​ 则当$b=(2^x 1)$ 阅读全文
posted @ 2019-02-08 21:15 birchtree 阅读(444) 评论(0) 推荐(0) 编辑
上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 36 下一页