自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(256)
  • 收藏
  • 关注

转载 BZOJ3527: [Zjoi2014]力【FFT】

3527: [Zjoi2014]力先除去qiq_iqi​,令g(i)=1i2g(i)=\frac{1}{i^2}g(i)=i21​式子变成Ei=∑j=1i−1qi∗g(i−j)−∑j=i+1nqi∗g(j−i)E_i=\sum_{j=1}^{i-1} q_i*g(i-j)-\sum_{j=i+1}^nq_i*g(j-i)Ei​=∑j=1i...

2019-03-17 16:20:00 213

转载 BZOJ4503: 两个串【FFT】

4503: 两个串【题目描述】传送门【题解】我们设置一个函数,F(j)=∑i=1∣T∣T(i)∗(S(i+j)−T(i))2F(j)=\sum_{i=1}^{|T|} T(i)*(S(i+j)-T(i))^2F(j)=∑i=1∣T∣​T(i)∗(S(i+j)−T(i))2为什么要这么设置呢,我们发现F(x)=0F(x)=0F(x)...

2019-03-16 08:14:00 203

转载 BZOJ3992: [SDOI2015]序列统计【NTT+原根+DP】

3992: [SDOI2015]序列统计【题目描述】传送门【题解】我们可以写出DP式,F[i][j∗a[k]]+=F[i−1][j]F[i][j*a[k]]+=F[i-1][j]F[i][j∗a[k]]+=F[i−1][j]初始状态F[0][0]=1F[0][0]=1F[0][0]=1对于上式我们很难处理,如果我们可以将相乘改成...

2019-03-15 15:45:00 228

转载 BZOJ3998: [TJOI2015]弦论【SAM】

3998: [TJOI2015]弦论【题目描述】传送门【题解】先用SAM算出不同子串个数,然后二分查找就可以了(像平衡树一样的查找第K小方式)【代码如下】#include<cstdio>#include<cstring>using namespace std;const int MAXN=5e5+5...

2019-03-14 20:50:00 138

转载 BZOJ4527: K-D-Sequence【线段树+单调栈】

4527: K-D-SequenceDescription我们称一个数列为一个好的k-d数列,当且仅当我们在其中加上最多k个数之后,数列排序后为一个公差为d的等差数列。你手上有一个由n个整数组成的数列a。你的任务是找到它的最长连续子串,使得满足子串为好的k-d数列。Input第一行包含三个用空格隔开的整数n,k,d(1≤n≤2∗1...

2019-03-13 20:17:00 104

转载 BZOJ2419: 电阻【高斯消元+基尔霍夫定律】

2419: 电阻Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 401 Solved: 178Description你突破了无数艰难险阻,终于解决了上面那道题,众神犇瞬间就震惊了。他们发现居然有人可以把那种非人类做的题目做出来。他们一致同意,最后这道题不能再出数学题了。考虑到两位小...

2019-03-13 08:05:00 129

转载 BZOJ5018: [Snoi2017]英雄联盟【01背包】

5018: [Snoi2017]英雄联盟【题目描述】传送门【题解】我们根据价值来背包就可以了。【代码如下】#include<cstdio>#include<algorithm>using namespace std;const int MAXC=250000,MAXN=200;int n,Alm,...

2019-03-12 20:27:00 127

转载 BZOJ4036: [HAOI2015]按位或【FWT+期望】

4036: [HAOI2015]按位或Time Limit: 10 Sec Memory Limit: 256 MBSec Special JudgeSubmit: 822 Solved: 516Description刚开始你有一个数字0,每一秒钟你会随机选择一个[0,2n-1]的数字,与你手上的数字进行或(c++,c的|,p...

2019-03-12 19:56:00 94

转载 BZOJ2843: 极地旅行社【LCT+并查集】

2843: 极地旅行社【题目描述】传送门【题解】就是裸的LCT,只要维护Splay中节点的和就可以了,连通性可以用并查集判。【代码如下】#include<cstdio>#include<algorithm>using namespace std;const int MAXN=30005;int n...

2019-03-12 16:27:00 146

转载 LCT动态树【史上最精简易懂的LCT讲解】

Link Cut Tree(动态树,LCT)介绍首先简单介绍一下Link Cut Tree,将一棵树分成轻边和重链,类似于树链剖分,但是树剖是静态的。LCT可以用于动态的加点和删点,甚至还可以换根。也就是LCT维护了一个动态的树。LCT中的每棵Splay都维护了一条重链(实际上是实链,这里统一讲重链)上的答案。多颗Splay连成一棵树...

2019-03-12 13:24:00 661

转载 BZOJ3669: [Noi2014]魔法森林【并查集+LCT】

3669: [Noi2014]魔法森林【题目描述】传送门【题解】我们发现只要记录这条路径上的最大值就可以了,那么我们可以强制其中一个为最大值,然后判断是否联通,更新答案(也就是将a排序,然后维护1到n中b的最大值就可以了)可以用LCT解决,考虑这个两个节点全部被加入,那么我们用这个b替换掉这条路径上最大的b,就可以了。【代码如下...

2019-03-12 07:30:00 91

转载 BZOJ3122: [Sdoi2013]随机数生成器【BSGS】

3122: [Sdoi2013]随机数生成器【题目描述】传送门【题解】我们对于题目中的式子变换一下形式,Xi+1+k=a(Xi+k)X_{i+1}+k=a(X_i+k)Xi+1​+k=a(Xi​+k)然后解出k=ba−1k=\frac{b}{a-1}k=a−1b​套上等比数列公式Xn=X1an−1+b(an−1−1)a−1\la...

2019-03-11 11:16:00 102

转载 BZOJ5087: polycomp【bitset+分块】

5087: polycomp【题目描述】传送门【题解】首先, 注意到对于这里的mod 2的多项式的乘法, 我们很容易给出一个使用bitset的压位的算法.这样就能把复杂度给除掉一个32. 然而n3/32n^3/32n3/32还是比较大.注意到对于f(g(x))f(g(x))f(g(x)), 我们可以将它每10项每10项分别计算...

2019-03-11 07:25:00 117

转载 LibreOJ545. 「LibreOJ β Round #7」小埋与游乐场【网络流】

545. 「LibreOJ β Round #7」小埋与游乐场【题目描述】传送门【题解】网络流,我们发现lowbit之后相同的点连出的边是相同的,所以可以缩点。【代码如下】#include<cstdio>#include<cstring>#include<iostream>#includ...

2019-03-07 20:12:00 170

转载 BZOJ2725: [Violet 6]故乡的梦【线段树+最短路】

2725: [Violet 6]故乡的梦【题目描述】传送门【题解】我们会发现,如果我们要走x-y这条边,一定会走一段最短路到x1(这里的最短路表示(S,T)的最短路),然后走一段非最短路到x,从y走一段非最短路到最短路上的点y1,然后走一段最短路到T。所以这条边影响的最短路为x1到y1这一段,所以我们之间线段树维护这个区间最小值。...

2019-03-06 18:02:00 114

转载 Codeforces711E. ZS and The Birthday Paradox【数学题】

E. ZS and The Birthday Paradox【题目描述】传送门【题解】我们最后可以得到一个式子1−A(2n,k)2nk1-\frac{A(2^n,k)}{2^{nk}}1−2nkA(2n,k)​然后对这个式子拆分1−(2n−k+1)(2n−k+2)...(2n−1)/2n(k−1)1-(2^n-k+1)(2^n-k...

2019-02-28 20:45:00 92

转载 BZOJ4589: Hard Nim【FWT+DP】

4589: Hard Nim【题目描述】传送门【题解】长度为n的不大于m的素数序列亦或和为0的方案数。考虑DP:F[i][xF[i][xF[i][x^y]=F[i−1][x]∗F[1][y]y]=F[i-1][x]*F[1][y]y]=F[i−1][x]∗F[1][y]显然F[1][i]F[1][i]F[1][i]只有iii为素...

2019-02-27 20:15:00 118

转载 Codeforces 446C. DZY Loves Fibonacci Numbers【斐波那契+线段树】

C. DZY Loves Fibonacci Numbers【题目描述】传送门【题解】我们可以知道斐波那契数列有两个性质:∑i=1nFi=Fn+2−F2\sum_{i=1}^{n} F_i=F_{n+2}-F_{2}∑i=1n​Fi​=Fn+2​−F2​Fn=aF1+bF2F_n=aF_1+bF_2Fn​=aF1​+bF2​所...

2019-02-26 21:16:00 225

转载 LibreOJ 6515. 「雅礼集训 2018 Day10」贪玩蓝月【背包+栈+ST表+复杂度计算】

6515. 「雅礼集训 2018 Day10」贪玩蓝月【题目描述】传送门【题解】在线的做法,LOJ上有题解,就是开两个栈,记录前面插入和后面插入,用背包算出答案。询问可以用ST表合并两个栈。删除直接O(1)就可以了,但是如果其中一个栈删完了,那么我们将另一个栈取出一半放到左边重新背包计算,因为每次取出一半,所以复杂度是log级别...

2019-02-23 14:44:00 219

转载 LibreOJ 6514. 「雅礼集训 2018 Day10」文明【虚树+LCA】

6514. 「雅礼集训 2018 Day10」文明【题目描述】传送门【题解】考虑笨蛋的写法,可以用LCA求出1号和其他点的中点,然后DFS搜索Size大小即可,但是,复杂度显然要炸,但是我们会发现,所需要的点不多,所以我们可以用虚数优化。代码如下#include<cstdio>#include<algorit...

2019-02-19 20:34:00 231

转载 Project Euler #624 Two heads are better than one【斐波那契】

Project Euler #624 Two heads are better than one【题目描述】传送门【题解】最后我们可以通过打表或推理得到这个式子G(n)=∑i=1∞f(i∗n−1)2i∗nG(n)=\large \sum_{i=1}^{\infty} \frac{f(i * n-1)}{2^{i * n}}G(n)=...

2019-02-18 15:49:00 87

转载 LibreOJ 6499. 「雅礼集训 2018 Day2」颜色【分块+bitset+ST表+卡常】

6499. 「雅礼集训 2018 Day2」颜色【题目描述】传送门【题解】分块+bitset+ST表+卡常对于序列分块,每块用bitset存起来,然后用ST表预处理bitset的合并,然后就是一道卡常题了。代码如下#include<cmath>#include<cstdio>#include<...

2019-02-17 16:34:00 321

转载 xsamsara.tk这个博客出了点小问题,将继续更新此博客

xsamsara.tk这个博客出了点小问题,将继续更新此博客 转载于:https://www.cnblogs.com/XSamsara/p/10547937.html

2019-02-03 17:25:00 92

转载 BZOJ2914: [Poi1997]ADDON【01背包】

2914: [Poi1997]ADDON【题目描述】传送门【题解】这题其实就是一个背包就可以了。代码如下#include<cstdio>#include<algorithm>using namespace std;int T,n,Ans,a[10005],O[10005],tot;bool f[10...

2018-11-13 17:00:00 135

转载 【Codeforces】1051F. The Shortest Statement【MST+LCA+最短路】

F. The Shortest Statement【题目描述】传送门【题解】题目也说了,重点是m-n<=20,我们就可以先跑最小生成树,最后剩下最多21条边,对着44个端点(包括起点和终点)用LCA建图,跑最短路就可以了。代码如下#include<cmath>#include<queue>#in...

2018-11-04 19:19:00 113

转载 生成函数(母函数)——目前最全的讲解

生成函数(母函数)什么是生成函数:wiki上的介绍在数学中,某个序列(an)n∈N\large {\displaystyle (a_{n})_{n\in \mathbb {N} }}(an​)n∈N​ 的母函数(又称生成函数,英语:Generating function)是一种形式幂级数,其每一项的系数可以提供关于这个序列的信息。使用母...

2018-10-27 20:38:00 3389

转载 【Codeforces】739E. Gosha is hunting【WQS二分】

E. Gosha is hunting【题目描述】传送门【题解】这题官方题解不是WQS二分。首先最优解肯定是f[n][a][b]。将DP消去一维,没有b的限制,那么肯定每个只猫都会选择B[i],所以我们就二分一个值,限制选择的个数。当然还可以更优,WQS二分套WQS二分,既然B[i]可以二分,那么A[i]也可以。代码如下O...

2018-10-25 15:12:00 91

转载 BZOJ 1181: [CROATIAN2009]IZBROI选举【DP+二分】

1181: [CROATIAN2009]IZBROI选举【题目描述】传送门【题解】第一问暴力就可以了。第二问,二分最小值,然后DP求解。f[i][j]f[i][j]f[i][j]表示前iii个用了jjj个席位的最少票数,对于第iii个,我们要算出最少需要的票数,如果相等,那么判断一下是否满足第二个条件。最后判断f[i][j]&...

2018-10-22 20:45:00 125

转载 【codeforces】1063B Labyrinth【SPFA】

1063B Labyrinth【题目描述】传送门【题解】坑爹题目,BFS是有反例的,如果一条路先到(x,y),但是却不能走到(x1,y1),却阻断了其他路通向这里。所以这题是SPFA,因为你会发现向左走和向右走是相互独立的。也就是说一个只能向左走L步的点和一个只能向右走R步的点同时在(x,y)这个点上,可以看成一个在(x,y)可以向...

2018-10-15 20:43:00 96

转载 【codeforces】1063C Dwarves, Hats and Extrasensory Abilities【二分】

1063C Dwarves, Hats and Extrasensory Abilities【题目描述】传送门【题解】二分法放点就可以了,第一个点在(0,0),然后二分这个点(mid,mid),如果不同于(0,0),那么L=mid+1,否则R=mid-1。最后如果最后直线就斜着放就可以了(没注意到最后会有直线放不下的点,WA了QAQ...

2018-10-15 20:42:00 89

转载 Codeforces Round #516 (Div. 2, by Moscow Team Olympiad)

Codeforces Round #516 (Div. 2, by Moscow Team Olympiad)这是一场让人哭晕在厕所的考试。T1水题。#include<cstdio>#include<algorithm>using namespace std;#include<cctype>...

2018-10-15 20:20:00 63

转载 LibreOJ10082. 「一本通 3.3 例 1」Word Rings【二分+SPFA】

10082. 「一本通 3.3 例 1」Word Rings【题目描述】传送门【题解】将一个字符串看成一条边,字符两端的字符看成节点,长度看成权值。二分枚举答案,最后SPFA刷正环,因为只要有一个正环存在就可以了。代码如下#include<cstdio>#include<cstring>#includ...

2018-09-19 21:20:00 262

转载 XSamsara的刷题顺序表

之前刷的题就不写了。文章目录2018年9月2018.09.172018.09.162018.09.142018.09.132018.09.122018.09.112018.09.092018.09.072018.09.062018.09.058月2018.08.302018.08.292018.08.282018.08.212018.08...

2018-09-18 19:00:00 678

转载 LibreOJ10078. 「CQOI 2005」新年好【暴力+最短路】

10078. 「CQOI 2005」新年好【题目描述】传送门【题解】我们先算出访问节点的最短路,然后DFS枚举访问顺序就可以了。代码如下#include<queue>#include<cstdio>#include<cctype>#include<cstring>#incl...

2018-09-18 18:36:00 155

转载 LibreOJ10077. 「一本通 3.2 练习 3」最短路计数【最短路+DP】

10077. 「一本通 3.2 练习 3」最短路计数【题目描述】传送门【题解】这题我们知道如何判断这条边是不是最短路上的边,那么就可以DP求解了。但是要注意顺序,我们可以预处理出最短路路径(x,y),然后BFS走DP就可以了。代码如下#include<cstdio>#include<cctype>#i...

2018-09-18 18:35:00 131

转载 Dijkstra次短路

Dijkstra次短路其实就是带入两个变量进行增广,一个表示最短,一个表示次短。接下来讲一下如何用堆维护,每当更新到了最短或次短,就将这个答案put进堆里就可以了。堆的大小不是很清楚,建议用调优先队列。例题传送门代码如下#include<cstdio>#include<cctype>#include&...

2018-09-18 18:33:00 108

转载 次小生成树模板

次小生成树模板【例题】传送门【做法】先用最小生成树做出这棵树,然后DFS建树,插入一条非树边,肯定在树上形成了环,所以在环上找一个最大的删去,加入这条边。最后从所有情中选一个最小的就是答案。(首先得知道这个次小指的是什么次小,是值次小还是值从小到大排序后排名第二的,也就是涉及到次小是否能等于最小的问题)贴上代码(Kruskal)...

2018-09-18 18:33:00 126

转载 【codeforces】1041E Tree Reconstruction【构造】

E. Tree Reconstruction【题目描述】传送门【题解】最后所有可行答案中肯定有一种是链。所以我们只需要构造条链就可以了。首先我们任意切开一条边,肯定有一个联通块的最大值是n,然后n-1肯定会出现一次。否则就输NO。我们定义关键点是在读入中出现过的点。肯定先从小的开始,这个关键点的出现次数就是这个关键点与下个关键...

2018-09-18 18:27:00 160

转载 [HDU6299] Balanced Sequence【贪心】

6299 Balanced Sequence这道毒瘤贪心题,反正我打了2个多小时没有调出来,机房里的dalao直接大力猜结论,直接A了此题,Orz。然而这题我没有写掉。考完后才发现,我的贪心完全反了。先讲一下贪心的做法,对每个字符串的左右括号个数进行分类讨论。 1. 如果左括号多,那么就将这个放到序列后半段,然后让右括号数量少...

2018-07-24 13:14:00 92

转载 [HDU6301]Distinct Values【模拟】

6301 Distinct Values这题是因为实在没事干了,我就随意打了一下,结果就A掉了。想法很简单,用堆维护在这个区间没有出现过最小数(因为我们要字典序最小,肯定要越高位越小,所以肯定先放小的数),我们可以将区间全部投射到一维的数组上,然后枚举这个位置,肯定选择最大的这个覆盖区间,放置这个区间中没有的最小的数。然后我们考...

2018-07-24 13:13:00 126

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除