
好题
KsCla
这个作者很懒,什么都没留下…
展开
-
noip2016 Day2 T2:蚯蚓 (归并)
蚯蚓题目描述本题中,我们将用符号[c]表示对c向下取整,例如:[3.0」= [3.1」=[3.9」=3。蛐蛐国最近蚯蚓成灾了!隔壁跳蚤国的跳蚤也拿蚯蚓们没办法,蛐蛐国王只好去请神刀手来帮他们消灭蚯蚓。蛐蛐国里现在共有n只蚯蚓(n为正整数)。每只蚯蚓拥有长度,我们设第i只蚯蚓的长度为a_i(i=1,2,...,n),并保证所有的长度都是非负整数(即:可能存在长度为0的蚯蚓)。原创 2016-12-07 17:29:45 · 973 阅读 · 0 评论 -
Tyvj1953:Normal (点分治+FFT)
题目传送门:http://tyvj.joyoi.cn/p/1953题目分析:好神的一道题,%了一波dalao的题解才会做,然后我发现我对期望一无所知QAQ……这题的难点其实既不在于点分,也不在于FFT,而是对期望的转化。首先由于期望的线性性,我们可以单独计算每一个点x对期望时间的贡献。而点x每被计算一次,就意味着存在一个分治中心y(x可以等于y),使得x到y路径上的其它点都还没有被作为分治中心。由于原创 2017-12-14 12:57:03 · 605 阅读 · 0 评论 -
BZOJ4826:[Hnoi2017]影魔 (单调栈+扫描线+线段树)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4826题目分析:这题是我在今年4月份省赛前看到的,那个时候想了一下,发现不会做。7个月后的今天,我试图把这个坑填了,然而想了很久还是不会做,最后只好%了一波网上的题解,才发现自己智商低下,思维僵化QAQ。本题的主要思路是转化贡献。由于k是1~n的一个排列,所以如果L+1<<R,(L,R)中必原创 2017-11-27 21:38:54 · 889 阅读 · 0 评论 -
BZOJ3244:[Noi2013]树的计数 (树的遍历)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3244题目分析:一道超级难想的题,我YY了好几天都不会做,最后只好%一波网上大神的题解QAQ。由于编号没有什么用,我们将BFS序强行设为1~n,并对应地改DFS序。现在我们考虑对着BFS序分层,每一层对应BFS序上的一个区间。然后要分析出一下三个结论: ①:1号点单独分一层。 ②:如果i原创 2017-12-07 15:17:13 · 535 阅读 · 0 评论 -
Codeforces Round #445 Div1 E:Mod Mod Mod (平衡树优化DP)
题目传送门:http://codeforces.com/contest/889/problem/E题目大意:有一个长度为n的序列a。定义函数f(x,n)f(x,n)值为xmodanx \mod a_n。并定义函数f(x,i)(1<=i<n)f(x,i)(1<=i<n)值为xmodai+f(xmodai,i+1)x \mod a_i+f(x \mod a_i,i+1)。求最大的f(x,1)f(x,1)原创 2017-12-17 20:42:28 · 771 阅读 · 0 评论 -
LOJ6299:「CodePlus 2018 3 月赛」白金元首与克劳德斯 (离散化+前缀和)
题目传送门:https://loj.ac/problem/6299题目分析:一道不难的题目,然而比赛的时候只有90pts。由于所有克劳德斯(clouds)一开始都不相交,所以答案不是1就是2。用O(n2)O(n2)O(n^2)暴力判断两朵云是否能相交,就有80pts了。接下来可以直接把判断相交的式子化开,用一些数据结构维护一下,就可以做到O(nlog(n))O(nlog(n))O(n...原创 2018-03-06 19:25:17 · 366 阅读 · 0 评论 -
BZOJ1095:Hide 捉迷藏 && SPOJ Qtree IV (树的三分治/括号序列)
题目传送门: BZOJ1095:http://www.lydsy.com/JudgeOnline/problem.php?id=1095 SPOJ Query on a tree IV vjudge题面:https://cn.vjudge.net/problem/SPOJ-QTREE4#题目分析:看完题就会发现后面那题是前面那题的加强版。这两题都可以用链剖,边分和点分实现。前两种解...原创 2018-03-08 21:20:12 · 378 阅读 · 0 评论 -
hdu5909:Tree Cutting (FWT/点分治优化树形DP)
题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5909题目大意:给出一棵树,每个节点的权值都在[0,m)[0,m)[0,m)内。现在对于每个v∈[0,m)v∈[0,m)v\in[0,m),你都应给出权值为vvv的至少有一个点的子连通块个数。一个连通块的权值定义为其所有点的权值异或和。答案模109+7109+710^9+7,多组数据。...原创 2018-03-15 21:33:10 · 431 阅读 · 0 评论 -
BZOJ3162:独钓寒江雪 (Hash判断树同构+树形DP+组合数学)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3162题目分析:一道很厉害的题,让我知道原来Hash还可以判断两棵树的形态是否相同。这题的具体做法还是看VFK的题解吧,我表示只能orz。用简单的话概括一下题解的内容就是:1.定义重心为树的直径的中点。如果树的直径长度为偶数,就在最中间的边上加一个虚点作为重心。 2.以重...原创 2018-03-16 11:16:22 · 496 阅读 · 0 评论 -
洛谷P4260:[Code+#3]博弈论与概率统计 (组合数学+莫队/分块)
题目传送门:https://www.luogu.org/problemnew/show/P4260题目分析:一道很好的题,既不是无脑的算法套路题,也不是单纯的推式子题。因此我讲得详细一些。比赛的时候我因为时间问题没有看这题,后来补了题面,花了一节数学课自己推出了一些东西(O(Tn)O(Tn)O(Tn)的做法)。后来看了官方题解,发现了一种关于组合数前缀和的新姿势QAQ。首先,题面给你的...原创 2018-03-09 19:44:59 · 903 阅读 · 0 评论 -
BZOJ3512:DZY Loves Math IV (杜教筛)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3512题目分析:很早就听说这是道神仙题,所以一直没有做。后来洛谷的某场比赛,T1和这题很像,然而我推了1h也化不开ϕ(ij)ϕ(ij)\phi(ij)(也许我智商太低),最后在该题取得了0分的好成绩QAQ。于是我决定过来学一学关于ϕϕ\phi的一些新姿势。首先有以下四条式子成立...原创 2018-03-03 10:17:49 · 719 阅读 · 0 评论 -
count (类插头DP+矩阵快速幂)
题目大意:有n个点,编号为1~n。第i个点和第j个点之间有一条无向边当且仅当|i-j|<=k。求这个图的生成树个数。k≤5,n≤1015k≤5,n≤1015k\leq 5,n\leq 10^{15}。题目分析:Coming在他初二时的资料里找到的一道题,是我校上古大神cdc给的。我不得不吐槽:难道前几届的dalao初二就能做这种题了吗?而且题面还很恶意地给出了怎么用矩阵树定理算无向图...原创 2018-03-22 20:19:00 · 375 阅读 · 0 评论 -
POJ3696:The Luckiest number (欧拉定理)
题目传送门:http://poj.org/problem?id=3696题目大意:给出一个数LLL,请求出一个最小的数ans,使得ans全由8组成(即ans=88888……8),并且是LLL的倍数。要求输出ans的位数。多组数据。1≤L≤2∗1091≤L≤2∗1091\leq L\leq 2*10^9。题目分析:一道很神的题,要是思路错了就走远了。我一开始的想法是把8提出来,然...原创 2018-03-19 18:49:32 · 483 阅读 · 0 评论 -
CodeChef Counting D-sets (容斥原理+组合数学)
vjudge题面传送门:https://cn.vjudge.net/problem/CodeChef-CNTDSETS(PS:vjudge上中文版的题面有误,一个点集的直径应该定义为其中点对的切比雪夫距离的最大值。切比雪夫距离是两个点各个维度之差的绝对值取max。这一点看回英文版题面就能知道)题目分析:一道思维难度较大,代码量极少的题。直径=d的点集数 = 直径<=d的点集数...原创 2018-03-29 21:40:41 · 676 阅读 · 0 评论 -
Codeforces Round #445 Div1 C:Maximum Element (组合数学+DP)
题目传送门:http://codeforces.com/contest/889/problem/C题目大意:有一个函数,传一个长度为n的数组a进去,并设计一个参数k,它会用以下方式帮你找最大值:从左往右扫a,并记录当前最大值。如果变更完当前最大值之后,再扫连续的k个元素,当前最大值都没有变(或者扫完了a),它就会直接返回当前最大值。现在给定n,k,你要输出有多少个1~n的排列a,会使得这个函数不返回原创 2017-12-11 22:21:24 · 415 阅读 · 0 评论 -
LOJ6253:「CodePlus 2017 11 月赛」Yazid 的新生舞会 (线段树)
题目传送门:https://loj.ac/problem/6253题目分析:这题是我做CodePlus11月月赛的时候见到的,当时由于TUOJ太卡,一直被无法提交的问题困扰。导致我写完前两题正解后也没有再写T3T4的暴力。不过我还是看了一下题面,赛后研究了挺久,结果发现还是不会做QAQ(虽然80分的暴力并不需要怎么动脑子)。看了题解后才发现这是道数据结构好题。一种可行的思路是:枚举一个值(如果序列中原创 2017-11-29 09:20:25 · 1010 阅读 · 0 评论 -
51Nod1222:最小公倍数计数 (莫比乌斯反演)
题目传送门:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1222题目分析:这题又是skywalkert博客里的练习题,我一开始自己手推原式子推出了一个O(nlog2(n))O(nlog^2(n))的东西(没有用μ\mu),完全没办法化简,还是要跑去看题解,后来发现别人的思路和我一开始就不是一个方向的……也许我数论还是太弱原创 2017-06-05 11:49:20 · 560 阅读 · 0 评论 -
SPOJ DIVCNT2(莫比乌斯反演+杜教筛)
题目传送门:http://www.spoj.com/problems/DIVCNT2/题目分析: 千古神题,这题想了我两天也没想出来…… 好吧,其实这题并没有用杜教筛,它并没有使用记忆化递归,也没有用狄利克雷卷积,只不过它的时间复杂度证明和杜教筛类似,也是O(n23)O(n^{\frac{2}{3}})(虽然我还是不知道具体是怎么证的)。该怎么说呢?至少加深了对积性函数前缀和的理解吧。 回到正原创 2017-06-01 22:02:25 · 1751 阅读 · 0 评论 -
洛谷P3327:[SDOI2015]约数个数和 (莫比乌斯反演)
题目传送门:https://www.luogu.org/problem/show?pid=3327题目分析:这题我又没有自己想出来…… 主要是本题要用到一个很神的结论: d(ij)=∑x|i∑y|j[(x,y)=1]d(ij)=\sum_{x|i}\sum_{y|j}[(x,y)=1] 这个是怎么推出来的呢? 我们考虑质数p对d(ij)的贡献,假设i的质因数分解中有k个p,j的质因数分解中q原创 2017-06-09 21:06:13 · 750 阅读 · 2 评论 -
洛谷P3172:[CQOI2015]选数 (DP+数论)
题目传送门:https://www.luogu.org/problem/show?pid=3172题目分析:我也不想说什么了,把一道简单的题想复杂了。一开始想错思路,以为提取出k和k平方的个数,两次组合数搞容斥。结果发现错的离谱(2k,3k等情况没有讨论)。然后想莫比乌斯反演(好像时间过不去呀),而且我也不知道怎么log(n)求组合数(因为不能预处理阶乘到n),还上网看了个log(n)求阶乘,原创 2017-06-12 14:09:31 · 456 阅读 · 0 评论 -
ZOJ3881:From the ABC conjecture(莫比乌斯反演)
题目传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3881题目分析:又是一道神题。别的算法都是做一题少一题,只有数论是做一题多一题的……至于推导过程的话已经有神犇在网上放了很优秀的题解,我只是过来总结一下思路要点+贴代码而已。 要点:本题要求的是一个很奇怪的函数f(n)=rad(n)ϕ(nrad(n))f(n)=r原创 2017-06-24 10:32:25 · 771 阅读 · 1 评论 -
BZOJ4025:二分图 ((CDQ分治+并查集)/LCT)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4025题目分析:这是一道LCT好题,同时一道CDQ分治好题啊,做了我整整一天……先说一下LCT的做法: 首先我们可以发现一个结论:对于一个偶环,如果不保存它的其中一条边,不会影响新的边加进来时对奇环的判断,但如果不保存两条边就会影响: 那就是说如果新加进来的边形成了一个偶环,我就不用原创 2017-08-10 14:56:46 · 1217 阅读 · 0 评论 -
BZOJ4537:[Hnoi2016]最小公倍数 (分块+并查集+启发式合并)
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4537题目分析:神题一道,一开始我YY了一下LCT,发现不可做,后来看了网上大神的做法发现是分块…… 由于2和3互质,所以我们可以看成一条边有两个属性a,b。先考虑暴力怎么做:对于一个询问(u,v,A,B),我们将所有a<=A,b<=Ba<=A,b<=B的边(a,b)加进并查集里,且在并查原创 2017-08-31 13:48:14 · 463 阅读 · 0 评论 -
Tyvj4866:摆摊 (线段树)
题目传送门:http://tyvj.cn/p/4866题目分析:做清北学堂NOIP模拟赛1的时候见到这题,一开始想了好久只会O(Qm−−√log(n))O(Q\sqrt{m}\log(n))的莫队,就是一边做莫队一边用线段树维护最左边的两个空摊位。后来tututu过来看到这题,转了两圈立马就想出了O(Qlog(m))O(Q\log(m))的正解做法……我们先用f[i]f[i]表示a[1]a[1]~a原创 2017-09-26 19:24:22 · 531 阅读 · 0 评论 -
洛谷P1445:没占到1444的愤怒 (数学推导+线性筛)
题目传送门:https://www.luogu.org/problem/show?pid=1445题目分析:这题我先自己推导了一遍,用了一种很麻烦的推法,后来发现题解的做法比我的快好多。我自己的推导: 求:1x+1y=1n!\frac{1}{x}+\frac{1}{y}=\frac{1}{n!} xyx+y=n!\frac{xy}{x+y}=n! 不妨令k=gcd(x,y),x=ak,y=bk原创 2017-09-19 13:27:13 · 839 阅读 · 0 评论 -
Tyvj4875:排列 (单调栈)
题目传送门:http://tyvj.cn/p/4875题目分析:真是一道神题,我考试的时候想了1h都没想出来,最后只好码了个暴力,没想到正解和暴力之间就差一个小优化…… 朴素的O(n2)O(n^2)暴力是固定左端点,然后R指针往右扫更新Min和Max值,令ans[Max-Min]加1,最后对ans数组做个前缀和。然而由于a数组是随机生成的,所以Max和Min的取值只会有log(n)个(题解上是这么原创 2017-09-27 16:49:34 · 430 阅读 · 0 评论 -
circle (容斥原理+数据结构)
题目大意:在一条直线上有2*n个点,点与点之间两两配对成n组。现在要你选出三组点对,使得这三组点对满足112233,122331,123123的其中一种形式,问方案数。n≤105n≤105n\leq 10^5。题目分析:多年前的老坑,昨天晚上想填一下,发现还是不会做,而且我还是看不懂题解。懵逼了一整晚,最后翻出标程来看,终于看懂了做法。从n个点对中选取3个点对,有C3nCn3C_n^3...原创 2018-03-29 10:56:47 · 1443 阅读 · 0 评论