- 博客(66)
- 资源 (2)
- 收藏
- 关注
原创 4833: [Lydsy2017年4月月赛]最小公倍佩尔数 数论变换
先吐槽一下:唐老师下标全崩了,最重要的后面的一坨推导全都挂了qwq,我推到倒数第二步然后和题解一对发现我好想全推错了233333? 最后还是找的A了的zyz才弄明白他写的是什么这题和一道斐波那契公倍数比较像,先说这个吧先考虑给你的那个式子,你上面减下面再移个项就变成通项公式了然后通过特征根/观察/打表你get了这个递推式是f(i)=2f(i−1)+f(i−2)f(i) = 2f(i-1) + f(i
2017-06-27 18:34:27
933
原创 4923: K小值查询
辣鸡bz卡我常数毁我青春考虑把>k>k的数字分成两个部分,一部分在[k+1,2k][k+1,2k]内,一部分在[2k+1,inf][2k+1,inf]在[k+1,2k][k+1,2k]内的数字显然都至少变小了一半,那么每个数字最多在loglog次就变成了1,所以我们对于这部分直接暴力重新插入然后后面那个部分平衡树打标记就行了然后我的splay被卡出了翔,经过坚持不懈的卡常最后get了ac#inclu
2017-06-23 19:54:37
785
原创 BZOJ 4916: 神犇和蒟蒻 杜教筛 数学
我来写个题解造(骗)福(访)世(问)人(量)第一问不会的出门左转百度μ\mu是啥去第二问的话显然答案是等于∑ni=1iφ(i)\sum_{i=1}^n{i\varphi(i)}的,不知道的出门左转百度φ\varphi计算公式去……然后考虑那个东西我们用杜教筛搞一下考虑f(x)=xf(x)=x和g(x)=xφ(x)g(x)=x\varphi(x)的狄利克雷卷积G(x)=∑d|xf(xd)g(d)G(x
2017-05-31 22:47:39
1436
原创 BZOJ 2427 软件安装 树形dp+tarjan
现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi。我们希望从中选择一些软件安装到一台磁盘容量为M计算机上,使得这些软件的价值尽可能大(即Vi的和最大)。 但是现在有个问题:软件之间存在依赖关系,即软件i只有在安装了软件j(包括软件j的直接或间接依赖)的情况下才能正确工作(软件i依赖软件j)。幸运的是,一个软件最多依赖另外一个软件。如果一个软件不能正常工作,那么它
2016-10-25 22:26:44
482
原创 1999: [Noip2007]Core树网的核 树形dp 单调队列
据说当年的数据范围是500….,数据好像随便YY怎么都能过的样子 = = 算了,我们来考虑正解 首先,答案不管在哪一条直径上讨论都是唯一的……我不会证明0.0 其次,假如说我们在直径上进行决策,就是在直径上选出了一段区间 <=s<=s ,这段区间要怎么决策呢?求每一个点到他的距离?显然不是,我们可以把直径抻直,被直径上的点挂着的树构成一个外向树森林,然后求出每一个小树到直径上对应根的距离 di
2016-10-25 22:24:07
414
原创 BZOJ 2151 种树 贪心 双向链表优化
给你一个nn个点的环,每个点有点权,在环上取出互不相邻的mm个点,求最大值 我们可以贪心,将所有的点扔入一个堆里 每次取出堆顶的元素,然后在双向链表中删去这个点 然而这样可能是错的,比如13541 \quad 3 \quad 5 \quad 4 正确答案应该是7 所以我们要给自己退路 在选择一个元素的时候,将该元素的值改为两边元素的和减去该元素,然后删去两边的元素 然后选择mm次我们来
2016-10-25 22:21:57
452
原创 BZOJ2815 ZJOI2012 灾难 构造+LCA+树形dp+拓扑排序
阿米巴是小强的好朋友。 阿米巴和小强在草原上捉蚂蚱。小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难。 学过生物的阿米巴告诉小强,草原是一个极其稳定的生态系统。如果蚂蚱灭绝了,小鸟照样可以吃别的虫子,所以一个物种的灭绝并不一定会引发重大的灾难。 我们现在从专业一点的角度来看这个问题。我们用一种叫做食物网的有向图来描述生物
2016-10-25 22:20:09
5268
原创 Codeforces 731F Video cards 筛法
题目大意 给定nn个数,选择一个作为打头的,然后把剩余比他大的全都变成打头的倍数(只能减法),比他小的舍弃,问选谁打头最得到的和最大,输出这个和 数字的个数和大小均小于200000考试的时候发现这题A的比EE还多,然后就转过来写,这题对于中国Oier来说实在是送分……首先,可以发现,对于一个基数basebase,在[k∗base,(k+1)∗base)[k*base,(k+1)*base)的数字
2016-10-25 22:18:26
5841
原创 Codeforces719E 矩阵乘法+线段树
Codeforces 719E 矩阵乘法+线段树题目大意:给定一个数列,请完成下面的两种操作1.1 1 r z [l,r][l,r]区间加上一个数zz2.2 l r 查询[l,r][l,r] 区间内所有的数字,对应在 fibfib 中的值例如 序列 1 3 2 4 5 ,2 2 3的结果就是 fib(2)+fib(2)+fib(3)=4fib(2) +fib(2) + fib(3) =
2016-10-25 22:16:51
5945
原创 NOIP2012 D1T3 开车旅行
md这sb题怎么这么墨迹,在心里默默地骂出题人咳咳 题目大意: 在一个数轴上,每个点有互不相同的点权,规定两点之间距离为两个的点权的差的绝对值,现在从最左面出发,只能向右走,交替的走次大值和最大值,然后现在问在规定的距离内,两个人向右走,两个人分别能走多少路SolutionSolution 思博倍增,普及组小孩都会 首先,暴力的话可以直接预处理出下一个点能走的最大值和次大值都是谁,然
2016-10-25 22:15:02
706
原创 3522: [Poi2014]Hotel 树形dp
题目大意 给定一棵树,找到三个点,使得三个点到中心点的距离相同,中心点相同算相同方案,求一共多少种方案 树的节点数 <=5000<=5000 大概这题的数据范围比较小……我就暴力过的…… 我要是知道正解以后再重写一下 先说一下暴力怎么写吧枚举中间点,记录总数,两个点的合法组合数(即不在同一棵子树中的任意搭配) 然后每次BFSBFS或者DFSDFS跑一下开桶统计一下就行了时间复杂度
2016-10-25 22:13:33
4007
原创 POI 2015 题解
POI 2015 题解在宋爷的教育下……我来自我教育一下,做一下近年的POI题……论弱逼的自我修养POI 2015 题解4385 POI2015Wilcze doy4378POI2015Logistyka3749 POI2015asuchy4383 POI2015Pustynia4382 POI2015Podzia naszyjnika4377 POI2015Kurs szybkiego
2016-10-25 22:12:12
6544
原创 POI2014
POI20143521 Poi2014Salad Bar3523 Poi2014Bricks3524 Poi2014CouriersPOI2014之前的2015写的自己真是神清气爽,最后剩的题是一点都不想写了…… 然后投靠了POI2014…………3521: [Poi2014]Salad BarDescriptionDescription 有一个长度为n的字符串,每一位只会是p或j。你需要取出
2016-10-25 22:11:02
5193
原创 寻找自由的钥匙 NKOI 树形DP
题目描述 通向自由的钥匙被放n个房间里,这n个房间由n-1条走廊连接。但是每个房间里都有特别的保护魔法,在它的作用下,我无法通过这个房间,也无法取得其中的钥匙。虽然我可以通过消耗能量来破坏房间里的魔法,但是我的能量是有限的。那么,如果我最先站在1号房间(1号房间的保护魔法依然是有效的,也就是,如果不耗费能量,我无法通过1号房间,也无法取得房间中的钥匙),如果我拥有的能量为P,我最多能取得多少
2016-06-17 13:06:44
578
原创 VIJOS-P1006 晴天小猪历险记之Hill spfa 最短路模型
传送门明显是可以用最短路来代替动规的题,所以就一发spfa水过去了 对 就是一发spfa 注意建图时得一些细节,比如边界。为了方便按循序个每个点标号#include <stdio.h>#include <string.h>#include <iostream>#include <queue>#include <algorithm>using namespace std;int map
2016-06-10 14:03:43
634
原创 BZOJ 1067 降雨量 线段树
传送门 这题也是醉了 估计考点是特判 不是数据结构 考察if和else的运用主要是考虑几种情况的分类 看代码吧对了 我写的是线段树 因为我懒 懒得搞ST#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#define N 50000+5#define M 200000+5using
2016-05-10 15:45:34
931
原创 C数列 vijos P1350 IDS 搜索
见前一发题解,无非就是把数字的范围换了一下,运算的方式换了一下 并没有什么 传送门下面是代码#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#define N 1000using namespace std;int a[N];int ar=1;bool s=false;int
2016-05-10 15:34:51
550
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人