自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

时光真疯狂, 我一路执迷于匆忙.

那么,你是想放手一搏,还是等到年华老去,心中充满遗憾,孤独地迈向黄泉路?

  • 博客(501)
  • 收藏
  • 关注

原创 [bzoj3522][bzoj4543][POI2014]HOTEL

Description给出一棵树,求这棵树中有多少种方法选择三个点使得这三个点之间的距离两两相等。 n<=1e5Solution首先我们来考虑一种奇怪的可优化的N^2做法。 设Fi,j表示i的子树中到i的距离为j的点的个数 Gi,j表示i的子树中有多少个点对满足到他们的lca的距离为d,同时lca到i的距离为d-j 也就是还能再伸出j的长度的点对数。 首先我们考虑选择一个儿子继承可以发现转

2017-09-11 22:22:38 570

原创 【NOIP2017提高A组模拟9.7】简单无向图

Description给出一张n个点的简单图,和每个点的度数di,求这样的图的个数。 n<=2000,di=1,2Solution既然度数只有1,2两种,那么显然这种图中只有环和链。 但是这个环有要求大小>=3,因为简单图不能有重边。 很好想到把环和链分开考虑,链的个数是确定的。 那么我们设si,j表示i个2,放到j个环中的方案数, 如果没有考虑环的大小限制s显然是斯特林数, 但是有限制

2017-09-08 21:54:38 667

原创 51nod算法马拉松28划水记

上高中的第一场认真打完全程(并不 的比赛 实力划水靠着手速打到了rank14 结果只涨了58 rating 怀念CF打一场涨100+rating的时代啊 A:签到题,想了好久QwQ 最后发现合法遍历的话划分方案必然唯一然后就过了 谴责出题人还要写高精度 B:比C难 考虑如果没有相等的限制怎么做 我们用哈希判断两个字符串是否相等 二分出那个不相等的位置即可 有限制? 处理出来字符

2017-09-04 22:01:13 491

原创 [ZJOI2016]线段树

Description给出一个长度为n的序列,对这个序列进行m次操作,每次操作随机一个区间[l,r],把这个区间里面的数全部变成这些数的最大值。 求最后每个位置的数的期望,答案乘上(n(n+1)/2)^m后对1e9+7取模 n,m<=400,a[i]<=1e9,数据随机Solutionzj的题都好毒啊QwQ 这是一个基于数据随机的算法 在随机数据下我们可以把每个数看做不同的(虽然相同也可以做

2017-09-04 21:39:46 790

原创 【GDOI2018模拟8.12】区间第k小

Description给出一个长度为n的序列a,q次询问某个区间[l,r]中的区间第k小,注意如果一个数的出现次数大于w就把它当成n 询问强制在线 n,q,ai<=10^5SolutionOrz 数据结构 根号算法讲师 首先如果询问可以离线怎么做? 一个显然的思路就是莫队+数据结构直接做,但是这样是O(nn√logn)O(n\sqrt n \log n)的 实测数据无梯度一个点都跑不过Qw

2017-08-21 12:17:57 867

原创 【GDOI2018模拟8.12】求和

Description求∑i=1n∑j=1n∑d=1kfd(gcd(i,j))\sum_{i=1}^{n}\sum_{j=1}^{n}\sum_{d=1}^{k}f_d(\gcd(i,j)) 其中当n=∏ipaiin=\prod_{i}p_i^{a_i}时fd(n)=∏i(−1)ai[ai<=d]f_d(n)=\prod_{i}(-1)^{a_i}[a_i<=d] 答案对2^30取模 n<=1

2017-08-21 12:01:31 392

原创 【清华集训2017模拟】Catalan

Description求Cnmod3814697265625(518)C_n \mod 3814697265625(5^{18})其中CnC_n为卡特兰数第n项 n<=10^18,T<=10Solution这么大的组合数取模啊。。。。以前真没见过 首先我们知道Ans=Cn2nn+1Ans={C_{2n}^{n}\over n+1} 根据套路我们只需要把n!写成5^e*f的形式,然后就可以用逆元

2017-08-20 22:04:30 659

原创 【GDOI2018模拟8.11】决战

Description N<=2500Solution听说暴力状压可以过?然而我常数不好只有90分 考虑普通的状压,F[i][s][j]表示当前填到第i行,第i行的状态为s,用了j个哲学♂家的方案数 我们把最后一维看做多项式,用x^j的系数表示答案 咦?模数是998244353哦,那我们是不是可以用NTT加速呢? 如果我们求出对于所有wiw_i,答案的多项式的点值,我们就可以通过一次插值来

2017-08-11 22:43:40 483

原创 【GDOI2018模拟8.11】质数

Description求∑i=1n2f(i)\sum_{i=1}^{n}2^{f(i)} f(i)表示i的不同的质因子个数 n<=10^12Solution我们设g(i)=2^f(i),显然g是积性函数 那么我们可以尝试杜教筛g 把g卷上一个mu,设g*mu=h 显然h也是积性函数 分析一下h(p^k),我们可以发现h(p^k)=[k==1] 特别的h[1]=1 那么归纳一下我们可以

2017-08-11 22:34:10 412

原创 类欧几里得算法推导

由于博主很菜,在这里只想简单推导两个最经典的问题模型用类欧的做法。 这两个模型的扩展等哪天有梦想了再补吧。。。Part 1求∑i=0n⌊ai+bc⌋\sum_{i=0}^{n}\lfloor{ai+b\over c}\rfloor 设答案为函数f(a,b,c,n) 当a>=c或b>=c的时候,我们可以提出一个⌊ac⌋\lfloor{a\over c}\rfloor或⌊bc⌋\lfloor{b\

2017-08-08 22:50:15 444

原创 【NOI2017模拟6.3】子序列

Description n,q<=1e5Solution迟来的总结 比赛时只会O(n)Dp离线搞了60分 这个就是F[i]=2*F[i-1]-F[next[i]-1] 其中next[i]表示i前面第一个和i字符相同的位置正解的Dp长这样: 设s[i]=c,则F[i][c]=∑F[i-1][k],F[i][k]=F[i-1][k] 然后这样可以写成一个转移矩阵,并且是有逆矩阵的 所以我们

2017-08-04 22:31:26 364

原创 [bzoj4548]【GDOI2018模拟7.14】小奇的糖果

Description给出平面上n个点,每个点有颜色,求一条水平线段最多能包含多少个不包含所有颜色的点 n<=1e5Solution之所以写bzoj前缀是因为我是在bzoj上先过了这道题然后在OJ上卡常卡了一个下午 做法还是太naive 枚举一个不出现的颜色,就变成了许多限制 把这些限制按y坐标排序,在每个限制之前处理一下答案 那么我们就要处理出某个点下面和它在x坐标上相邻的两个点 这个

2017-07-14 22:20:06 569 2

原创 【GDOI2018模拟7.12】A

Description n,m<=1e5,注意题目中的低于是指小于等于Solution把逆序对拆成每个点后面小于它的点的个数和 考虑一次操作,影响的点之后这个位置后面权值<=当前权值的点的贡献 这些点的权值会变成0,其他点的权值不会变 那么我们可以离线处理出每个点最早一次被修改的时间,然后对把它对于某一段答案的贡献减掉 这个东西听说可以用树状数组做,然而由于我太菜用了线段树_ (:з」∠)

2017-07-14 22:14:25 359

原创 【HNOI2016模拟4.4】Alphadog

Description n<=1e5,字符集大小<=26Solution我们把原串的回文树建出来,以下讨论的都是fail树 设X为x这个字符在回文树上所对应的点 Y为y这个字符在回文树上所对应的点 可以发现LCP(x,y)等价于LCA(X,Y)的长度 也就是我们要动态维护∑Xlen(LCA(X,Y))\sum_{X}len(LCA(X,Y)) 先考虑N^2暴力 维护每个点的子树中有多少

2017-07-14 22:08:18 526

原创 【HNOI2016模拟4.4】Stage

Description N,M<=1e3Solution考虑每个点被观察到的概率 这样很难算我们可以计算每个点不被观察到的概率 这个等价于把这个点和所有观察点拉出来一起做凸包,这个点出现在凸包上的概率 那么我们可以枚举两条边,计算这两条边出现的概率 就是这两条边外部的点全部不出现 这些点把所有观察点关于这个点做极角排序后是连续的一段 所以可以用一个数据结构维护一段点的(1-p)的积

2017-07-14 21:59:06 353

原创 GDOI7.6~7.15模拟总结

终于分组了,但总感觉哪里不太对劲7.6T1 一眼线性基,然而忘了插入还自己推了一波 这样只有50分,打个表找个规律就可以过了 T2 被计算几何吓死,但仔细一看发现还是可以做的 T3 环套树哈希。。。等有时间再去写吧。。。T2由于没注意到方案的输出也需要有序而只有10分(虽说即使注意到了也只有20分 T3还不想写总结:做GDOI的题也是要有信心,能写的暴力要努力写对7.7T1 树形Dp,附加分

2017-07-14 21:49:25 422

原创 [bzoj4916]神犇和蒟蒻

Description求∑i=1nμ(i2)\sum_{i=1}^{n}\mu(i^2) 和∑i=1nφ(i2)\sum_{i=1}^{n}\varphi(i^2) n<=1e9,答案对1e9+7取模Solution被题目名字和AC人数骗进来,一看题还吓了一跳 难道这是什么最新的操作.jpg 然后仔细看了一眼题 mdzz这不是随便做吗? μ\mu的话除了i=1不是全部为0吗?! φ\v

2017-07-12 22:35:25 599

转载 欧拉定理ext证明[转自知乎]

由于今天做题时遇到了这个神奇的又找不到什么资料的定理就学了一发=w= 原文传送门 求证:ax≡axmodφ(m)+φ(m)(modm)a^x\equiv a^{x\mod \varphi(m)+\varphi(m)}\pmod m 前提条件是x≥φ(m)x\ge \varphi(m)首先你需要会证普通的欧拉定理,这个网上资料很多自己查就好了 接下来证明若x≡y(modm1)x\equiv y

2017-07-09 22:12:16 843 4

原创 [51nod1810]连续区间

Description给出一个1~n的排列,求有多少个区间将区间内所有元素排序后,任意相邻两个元素值差为1 n<=1e6Solution个人认为马拉松26中最可做的一道题(然而还是没有做出来 考虑分治,也就是我们要统计左端点在[l,mid],右端点在[mid+1,r]的区间个数 设max[i]表示i到mid的前缀/后缀max,min[i]表示i到mid的前缀/后缀min 设区间左端点为i,右

2017-07-09 19:59:07 962

原创 【GDOI2018模拟7.7】寻找天哥

Description n<=3000Solution答案相当于求E(∫R04π3x3dx)E(\int_{0}^{R}{4\pi \over 3}x^3dx)也就是求E(π3R4)E({\pi \over 3}R^4) 现在就是要找到一种方法求E(R4)E(R^4) 发现这个东西等价于求E(((∑i=1naixi)2+(∑i=1nbixi)2+(∑i=1ncixi)2)2)E(((\sum_

2017-07-07 20:02:53 554

原创 【GDOI2018模拟7.6】仰望星空

Description由于原题看了好多遍才真正理解题意,这里讲一个简化版本 给出平面上的一个圆和n个点 现在要再这n个点之间两两连边 每个点只能被连一次,只有圆内和圆外之间距离不超过d的点可以互相连边 且如果存在三个圆内的未被连边的点x,y,z,与圆外一点w的距离不超过d 现在若想连接w和y,并且x与z的连线与w,y的连线相交,那么这个连线是不合法的 求最大的连线数目和方案 n<=1e

2017-07-06 22:03:15 581

原创 【GDOI2018模拟7.6】吃干饭

Description求区间[l,r]中的数任意互相异或之后有多少种可能的结果 l<=r<=1e18,数据组数<=100Solution这种题一眼线性基啦~ 虽然我并不太熟练,还自己推了一遍插入 这样直接暴力做有50分 然后打了个表发现了一个规律: 首先l一定会在线性基中, 然后我们知道了线性基中的最后一个数,想要快速找出线性基中的下一个数 假设当前的数的二进制表示是 10100,那么

2017-07-06 21:55:03 414

原创 【WinterCamp 2013】数三角形

Description给出二维平面上的n个点,求这n个点形成的三角形中,有多少个三角形包含原点。 n<=1e5,坐标绝对值<=1e5Solution第一道计算几何留影_ (:з」∠) _ 首先我们将这n个点按与x轴正半轴的夹角从小到大排序 然后我们统计每个点往右能形成多少个不包含原点的三角形个数 也就是与这个向量的夹角在pi以内的点的个数 这个可以用叉积的正负性扫一遍得到 然后直接用总数

2017-07-05 19:53:00 344

原创 暑假NOIP集训6.30~7.5总结

为什么我要选择这个时间来写总结呢? 因为我喜欢 NOI快要开始了 然而这有什么关系吗?=w= 希腊奶6.30T1一眼题,or值最大显然是整个串,and值最大显然是长度为k的串 log维护一下就好了 T2一眼题,随便写一个树形Dp就好了 T3并不是一眼题,但是玩了玩样例之后发现了一个log的做法 由于比较怠惰写了个set导致TLE (⊙﹏⊙)b T2由于没有考虑到权值可能为负而fst

2017-07-05 16:15:02 457

原创 [乱搞]斐波那契数列与gcd之间一个有趣的定理

求证gcd(Fn,Fm)=Fgcd(n,m)\gcd(F_n,F_m)=F_{\gcd(n,m)} 其中 F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2) (n>1)证明听说这是一个非常有用的定理,那么就来随便证(luan)明(gao)一下Part 1gcd(Fn,Fn−1)=1\gcd(F_n,F_{n-1})=1 证明:gcd(Fn,Fn−1)=gcd(Fn−Fn−1,Fn−

2017-06-29 22:26:51 4321

原创 [51nod1190]最小公倍数之和V2

Description给出a,b,求∑i=abgcd(i,b)\sum_{i=a}^{b}\gcd(i,b) a,b<=1e9,数据组数<=1e5,答案对1e9+7取模Solution看到gcd想反演(然而这个是lcm) 这个反演不是正常套路 坑了我好久才跳出来 首先ans=b∑d|b1d∑i=abi[gcd(i,b)=d]ans=b\sum_{d|b}{1\over d}\sum_{i=a

2017-06-29 21:12:39 927 1

原创 暑假NOIP集训6.24~6.29总结

赶在开始肝罗生门之前把总结码了_ (:з」∠) _ 既然说是NOIP集训那么既然就是NOIP难度的题,基本是没有什么难度的 然而每天都由于各种黑恶势力奥妙重重的原因fst,而且非常严重 以后的模拟赛必须要注意了,要破不了这个flag我NOIP就….. 算了flag太多了别再立了=w=6.24由于23号晚上毕业聚餐导致精神萎靡不振早上没打比赛 看到题后口胡一下做法 T1是个神奇的随机+近似

2017-06-29 20:37:58 458

原创 【NOI2017模拟6.26】A

Description给出一棵树,求树上所有满足路径中任意两个不同点a,b,gcd(a,b)≠agcd(a,b)\not=a的无序路径 n<=1e5Solution先讲讲我在考场上想的辣鸡做法 暴力部分枚举倍数来判断能做到n^2 log n 由于某些奥妙重重的原因这个做法能跑过3*1e4 一条链的话可以预处理出每个点往左/右最多能扩展到的点 然后从左往右扫一遍维护每个点往左能对答案贡献的区

2017-06-26 20:46:55 642

原创 [完结撒花]sone0补完计划

原题传送门 终于下定决心来开这个坑 看看我在中考前能写多少分吧UPD:完成成就\(^o^)/~。。。

2017-05-28 10:11:52 896 2

原创 单纯形模板

学习UOJ上dalao们的初始化黑科技

2017-05-12 12:48:13 835

原创 单纯形求解线性规划

线性规划是什么我想这个问题高中课本也给出了比较详细的定义了 用向量来解释的话就是构造一个n维向量x,满足 maxcTx\max c^Tx Ax≤BAx\le B x≥0x\ge 0 其中c是给出的n维向量,A是n*m的矩阵,B是m维向量 这是线性规划的标准型我们可以知道,任意一个线性规划都是可以转化为标准型的 对于目标值取min的我们可以取反之后取max 对于Aix≥BiA_ix\g

2017-05-12 12:47:14 983

原创 GDOI2017油记

前言初三了啊~应该好好中考的说(才不 NOIP考的不是特别理想,和别的dalao差了将近100分 所以这次本来就是抱着一种打酱油的心态来的=w= 才没有立flag呢Day0这个出行的日子不是很吼啊~~ 然后大巴果然被卡评测了QwQ 于是开始颓fgo第五章剧情爆肝 等到我手机没电了还没到?! 这卡评测怎么卡的比bzoj上还憋屈啊?! 到宾馆已经快六点了。。。。和lzy被发配到1901偏

2017-05-03 20:55:40 1002

原创 【GDSOI2017第三轮模拟】Gift

Description n<=50000Solution刚刚考完体育中考,整个人都颓废了_ (:з」∠) _ 于是决定写一个FFT冷静一下~ 我们可以强制把加的数都放到y上面,这样c的非负整数限制也没有了。 那么我们把式子化一下: ∑i=1n(xi−(yi+c))2=∑i=1nx2i+∑i=1n(yi+c)2−2∑i=1nxi(yi+c)\sum_{i=1}^{n}(x_i-(y_i+c)

2017-04-19 21:25:45 484

原创 51nod算法马拉松23划水记

在愚人节打的一场比赛=w= 排在了44(好数字)rating++3.31晚上强行留下来做了几套试卷,整个人都处在一种非常颓废的状态_ (:з」∠)_ 初三苟压力大啊~~~4.1woc辣么多个AK的 D题E题也辣么多人过吓到了 看来这场很水啊~~ 抱着这种想法先去看了E题。。。 这不是裸的莫队+树状数组吗? E题送分smg~~ 回头看A题,三角函数懵逼.jpg B题,随便推推不是一个

2017-04-07 12:48:27 628 4

原创 【NOI2017模拟3.25】历史行程

Description给出一个长度为n的字符串,m次询问前缀l~r中两两的最长后缀最长是多少。 n,m<=1e5Solution显然先倒过来,询问变成求后缀的lcp SA处理一下就好了。 但是rank不是有序的,无法处理,怎么办呢? 可以离线莫队,维护一个set,每次插入或删除都可以log n解决。 但是复杂度过高会T怎么办呢? 我们每次插入就是要求某个点的前继和后继。 这个东西可以用

2017-03-29 20:55:32 528

原创 【NOI2017模拟3.25】跳蚤王国

Description给出一棵n个点的树,你可以对这棵树进行任意次操作,每次操作选择一条边删掉再加上一条边,每次操作结束后要保证这张图仍然是一棵树。 对于每个点i求若要使i成为重心最少需要进行多少次操作。 n<=1e6Solution先钦点一个点为根,把操作视为砍掉子树(因为砍掉的可以直接接到重心上) 我们就是要砍掉尽量少的大小<=n/2的子树,并且对于每一个砍完的子树的大小也要<=n/2

2017-03-29 20:44:14 832

原创 【NOI2014模拟7.11】数学题(math)

Description给出两个二维向量a和b,求两个整数λ1,λ2\lambda_1,\lambda_2不同为0,使得λ1a+λ2b\lambda_1a+\lambda_2b最小。Solution富榄教我学数学=w= 为了方便我们约定|a|<|b|,a⋅b>0|a|<|b|,a·b>0 如果不是的话可以通过调整λ\lambda的正负性和交换a,b来完成。 我们要让|ax+by|最小 那么同时

2017-03-24 19:22:20 594 2

原创 51nod算法马拉松22总结

突然发现自己好像有几篇blog被陶冶大大拉去示众了=w= 那么就不能乱水了,好好的总结一下吧。。。3.3听说比赛昨天晚上开了??? 有人秒切题2333 A一脸不可做的样子,CF原题有人做过吗? B更是一脸不可做,期望什么的最方了。。。 C???? 欺负我初三刚刚会求导TAT D???? woc这次马拉松怎么这么鬼 是不是所有题的分值都被黑幕除了个2 E感觉可持久化加链剖可以搞

2017-03-10 20:25:44 699

原创 FFT模板

带预处理的,听说精度会炸=w=void DFT(complex *a,int flag) { for(int i=0;i<len;i++) { int p=0; for(int j=i,k=0;k<lg;j/=2,k++) p=(p<<1)+(j&1); t[p]=a[i]; } for(int m=2;m<=len;m=

2017-03-10 19:20:58 757

原创 FFT学习小记

前言其实很早就看懂了FFT是如何工作的 只是懒癌晚期加上各科老师逼着我好好中考所以没时间来写 现在来补一发 由于博主很弱,您无法避免看到:偷懒,智障,意识流 请勿恶意拍打喂食=w=前置技能首先你需要知道什么是复数并且会表示复数 简单来说就是我们约定i=−1−−−√i=\sqrt{-1} 那么所有的复数都可以表示成z=x+iyz=x+iy的形式 于是我们在复平面上就用向量(x,y)来表示

2017-03-03 20:02:14 477

空空如也

空空如也

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

TA关注的人

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