自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(524)
  • 资源 (1)
  • 收藏
  • 关注

原创 GDOI2022退役记(从天上到地下)

在电脑前做了一个半小时还没想好怎么写可能是还不太愿意接受自己已经退役这个事实吧回忆录后面可能会补上,看心情吧,至少现在心情并不太好,只是把省赛记录一下吧尽量避免代入太多的个人情感,只是记录吧可能多少戾气还是有点重Day -inf联赛有一题看错了,最后一题部分分只打了一半,失手有点严重,去掉高三大概全省排29,比队线低了30+分,第三题写个随机化就能过,靠运气就能拿高分,属实让人不太舒服,心态发生了一些变化,不过也冷静分析了排在我前面的选手,并不是都水平很高,反倒是有些水平挺高的也失手了,排在我后

2022-04-18 23:55:11 1786 5

原创 IOI2020国家集训队作业乱做

阿巴阿巴阿巴阿巴阿巴阿巴

2021-01-13 16:42:46 736

原创 喜欢的句子

写一些喜欢的句子

2021-01-05 18:47:24 559 2

原创 【持更】OI大事件

小学的就没啥好说的啦OI大事记:初一的时候noip2017普及 打暴力打到了350,省一滚粗,从此有了下面的东西初一寒假参加gdkoi 50分滚粗初一下学年省赛gdoi 80分滚粗(上面可能都是失误吧,也可能真的是我太菜)初一下学年犯低级错误NHOI 280,差点AK QWQ码风突变(受YJQ的影响) —— 7.24noip tg 初赛压线过 —— 10.24...

2019-06-10 16:44:19 1050 2

原创 【持更】错误是个好东西

比赛时犯的错在gdkoi2017的时候有一道暴力分很高的题没有检查,Au ——> Fe在gdoi2018的时候有一道送分的题没有检查,Au ——> Fe结论:检查很重要,不要太相信对拍,千万不要粗心,过于自信在模拟赛时在一道题上刚了3.5h,然后比赛结束,报灵QWQ(赛后证明这题暴力都可以AC)结论:不要死缠一道题,拿分很重要模拟赛的时候把一个变量名用重了,70...

2019-06-10 16:44:15 441

原创 OI回忆录

AFO

2022-07-12 14:51:22 878 3

原创 CF891E Lust

https://www.luogu.com.cn/problem/CF891E推一下不难发现,最后答案就是∏ai−∏(ai−bi)\prod a_i-\prod(a_i-b_i)∏ai​−∏(ai​−bi​)bib_ibi​表示最终第iii个位置的减少量,主要是考虑后面那个东西怎么求对于一组∑bi=k\sum b_i=k∑bi​=k,它的期望是1nkk!∏bi!∏(ai−bi)\frac{1}{n^k}\frac{k!}{\prod b_i!}\prod(a_i-b_i)nk1​∏bi​!k!​∏(a

2022-04-12 08:53:37 392

原创 杂题乱做 PART 4

ps:主要是把之前做的有点意思的题总结一下luogu P5892 [IOI2014]holiday 假期思维难度: (5)代码难度: (5)sol: 不难看出来经过的一定是先向右再向左,或者反过来,只用考虑前一种,后一种把序列反过来再做一遍即可对于一个确定的区间[l,r][l,r][l,r]相当于是移动完后选区间的前kkk大考虑左端点单调递增,右端点也一定是单调递增的,显然具有决策单调性分治优化即可codeCF1225F Tree Factory思维难度: (5.5)代码难度:

2022-04-12 08:30:33 576

原创 luogu P1989 无向图三元环计数

https://www.luogu.com.cn/problem/P1989经典问题,对于原图的每一条边u−>vu->vu−>v,如两点的度数不一样,那么就度数小的连向度数大的,否则编号小的连向编号大的然后考虑新图的每一条边u−>vu->vu−>v遍历和vvv相连的每个点www,看www是否和uuu相连,不难发现这个的时间复杂度是∑out[vi]\sum out[v_i]∑out[vi​]的那么如何证明这个时间复杂度是O(mm)O(m\sqrt{m})O(mm​)

2022-04-06 15:56:19 459

原创 CF1588F Jumping Through the Array

https://www.luogu.com.cn/problem/CF1588F之前见过类似的套路,不过是用来优化空间的,就是莫队的时候分几块来分别跑要说的话更加类似KD−treeKD-treeKD−tree每n\sqrt{n}n​次操作后重构?考虑每根号次操作放一起处理把操作2,32,32,3涉及到的点设为关键点,不难发现,这个在一个环上,这个关键点到上一个关键点之前到贡献是一样的,可以缩成一个点就像这样,缩完点之后就只有n\sqrt{n}n​个点了,那么询问的时候就只需要枚举每一个点,然后在

2022-04-06 14:44:43 248

原创 luogu P3750 [六省联考 2017]分手是祝愿

https://www.luogu.com.cn/problem/P3750k=nk=nk=n给了808080分可还行首先考虑k=nk=nk=n,不难想到一个贪心,从大到小枚举每个开关,如果为111就把按,这样一定是最优的,就做完了考虑k<nk<nk<n,先跑一边上面的得到gsgsgs把期望的式子写出来E(i)=inE(i−1)+n−inE(i+1)+1E(i)=\frac{i}{n}E(i-1)+\frac{n-i}{n}E(i+1)+1E(i)=ni​E(i−1)+nn−i​E

2022-04-02 11:26:50 455

原创 NOIonline 2022

降大智了属于是考后光速补完A 丹钓战sb题,首先可以处理出一个L[i]L[i]L[i]表示iii这个点最多可以向前一路pop到那个点然后就可以用扫描线+树状数组简单维护了处理L[i]L[i]L[i]可以简单的用个单调栈模拟题目,但是我考场上降智了,去找了个性质,首先可以二分+st表找出iii前面一串比a[i]a[i]a[i]小的区间[l,i][l,i][l,i],然后找这个区间中最小的L[pos]L[pos]L[pos] 发现a[L[pos]−1]a[L[pos]-1]a[L[pos]−1]一定是

2022-04-02 11:13:51 611

原创 杂题乱做 PART 3

ps:主要是把之前做的有点意思的题总结一下CF1129D Isolation思维难度: (8) 分块优化DPDPDP确实是没写过,也没想过,听提示才想到的代码难度: (5)sol: 首先不难想到考虑扫描线,对于每个左端点,记录gs[l]gs[l]gs[l]表示[l...r][l...r][l...r]出现次数为111的数的个数然后对于每加入的一个iii,即上一个和iii一样的是lst[i]lst[i]lst[i],相当于是把[lst[lst[i]]...lst[i]−1][lst[lst[

2022-04-02 10:52:22 820

原创 CF949 简要题解

A Zebras0一定比1多,考虑一列列的填,如果遇到000就cnt++cnt ++cnt++,在cntcntcnt这个位置放一个000,否则在cntcntcnt这个位置放一个111,然后cnt−−cnt --cnt−−code:#include<bits/stdc++.h>#define N 200050using namespace std;int ans, n;char st[N];vector<int> a[N];int main() { scanf

2022-04-01 11:01:13 491

原创 luogu P3600 随机数生成器

https://www.luogu.com.cn/problem/P3600每一步转换都不难,但许多步连在一起就不简单了考虑怎么计算最大值为xxx的概率这个也不好算,考虑算≤x\le x≤x的概率也就是说对于每个区间,至少有一个数是≤x\le x≤x的概率概率不好算,考虑算方案数总的方案数显然是mnm^nmn,考虑dpdpdp设f[i][j]f[i][j]f[i][j]表示已经填了前iii,填了jjj个≤x\le x≤x的,钦定第iii个是≤x\le x≤x的方案数不难发现对于每个xxx,可

2022-03-31 20:50:00 314

原创 luogu P4240 毒瘤之神的考验

luogu P4240 毒瘤之神的考验首先有一个重要的式子ϕ(ij)=ϕ(i)ϕ(j)gcd⁡(i,j)ϕ(gcd⁡(i,j)\phi(ij)=\frac{\phi(i)\phi(j)\gcd(i,j)}{\phi(\gcd(i,j)}ϕ(ij)=ϕ(gcd(i,j)ϕ(i)ϕ(j)gcd(i,j)​这题就直接这么推=∑d=1dϕ(d)∑i=1n/d∑j=1m/dϕ(id)ϕ(jd)[gcd⁡(i,j)=1]=\sum\limits_{d=1}\frac{d}{\phi(d)}\sum\limits

2022-03-24 09:11:55 242

原创 杂题乱做 PART 2

ps:主要是把之前做的有点意思的题总结一下

2022-03-18 20:34:46 471

原创 杂题乱做 PART 1

ps:主要是把之前做的有点意思的题总结一下

2022-03-18 15:27:37 360

原创 luogu P5843 [SCOI2012]Blinker 的噩梦

https://www.luogu.com.cn/problem/P5843因为保证了互不相交,并且出发点和终止点也不相交,所以可以考虑建树考虑一条与yyy轴平行的一条直线,从左往右扫,扫到一个图形左端点的时候,把它的上下的边界加进去,扫到右端点的时候把它的上下边界删掉在加入的时候,看一下下边界往下已经加入的当中最近的是那条边界,如果是xxx的上边界,那么fa[i]=fa[x]fa[i]=fa[x]fa[i]=fa[x]他们显然是兄弟,否则xxx一定包含i,fa[i]=xi,fa[i]=xi,fa[i

2022-03-17 15:53:06 479

原创 luogu P4249 [WC2007]剪刀石头布

https://www.luogu.com.cn/problem/P4249考虑啥限制都没有的情况,方案数是(n3)=n(n−1)(n−2)6\binom{n}{3}=\frac{n(n-1)(n-2)}{6}(3n​)=6n(n−1)(n−2)​一个三元环(a,b,c)(a,b,c)(a,b,c)是长啥样的?容易发现就是

2022-03-16 20:29:11 389

原创 CF193E Fibonacci Number

https://www.luogu.com.cn/problem/CF193E属实是知识盲区了通过打表不难发现在膜10410^4104下循环节是1.5×1041.5\times 10^41.5×104膜10510^5105下循环节是1.5×1051.5\times 10^51.5×105膜10610^6106下循环节是1.5×1061.5\times 10^61.5×106膜10710^7107下循环节是1.5×1071.5\times 10^71.5×107以此类推类推,后面mod  10i

2022-03-15 20:01:44 311

原创 luogu P7776 【模板】特征多项式

https://www.luogu.com.cn/problem/P7776众所周知,对于一个n×nn\times nn×n的矩阵AAA,它的特征多项式为p(x)=DET(xI−A)p(x)=DET(x I-A)p(x)=DET(xI−A)有一条重要的性质DET(xI−A)=DET(xI−QAQ−1)DET(xI-A)=DET(xI-Q A Q^{-1})DET(xI−A)=DET(xI−QAQ−1)证明:DET(xI−QAQ−1)=DET(xQIQ−1−QAQ−1)=DET(Q(xI−A)Q−1

2022-03-14 14:08:11 889

原创 AT3871 [AGC021E] Ball Eat Chameleons

https://www.luogu.com.cn/problem/AT3871建议先做[SCOI2010]生成字符串好了直接来分析这一题假设红蓝球数为R,BR,BR,BR+B=kR+B=kR+B=k首先一定要满足R≥BR\ge BR≥B如果R≥B+nR\ge B+nR≥B+n显然随便拍就行,容易计算(R+BR)\binom{R+B}{R}(RR+B​)如果R<B+nR < B+nR<B+n 必定是每个变色龙先吃红,再吃蓝,再吃红交替刚好有R−BR-BR−B个变色龙红的比蓝的

2022-03-11 21:38:05 348

原创 CF1119H Triple(再谈FWT)

https://www.luogu.com.cn/problem/CF1119H模拟赛做到类似的trick,感觉很nb,被杨队怒斥这不是sb套路?!!加深了我对FWTFWTFWT的理解回忆一下FWTFWTFWT的位矩阵or1 01 1and1 10 1xor1 11 -1这对应的都是左乘一个[a[k],a[k+(len>>1)][a[k],a[k+(len>>1)][a[k],a[k+(len>>1)]IFWTIFWTIFWT就是求逆

2022-03-09 22:00:31 337

原创 CF1043F Make It One

https://www.luogu.com.cn/problem/CF1043F注意到质因子的个数不会很多,然后每次操作至少要减少一个,所以答案的上界很小考虑美枚举答案,但是要求gcdgcdgcd为1的并不好求考虑将判定性问题变为计数类问题容斥,枚举gcdgcdgcd,容易得到f[d]=(cnt[d]ans)f[d]=\binom{cnt[d]}{ans}f[d]=(anscnt[d]​),容斥系数就是μ\muμ至于模数随便选一个即可,反正冲突概率极小cnt[i]cnt[i]cnt[i]我是用高

2022-03-04 14:44:49 274

原创 CF1137简要题解

https://codeforces.com/contest/1137插入原来的大概50+不过是几年前的比赛了,参考价值不是很大A不想写,爬了B不难发现直接跑个KMP即可codeC为什么要卡栈内存为什么为什么???!!具体思路是先拆点,每天每种博物管一个点,可以发现同一种博物馆如果联通的话一定是在一个强连通分量里面的于是缩个点,然后跑树上最长路径即可为什么dfs前面一定要加inline!!!!codeD构造题真掉头发先考虑每次走一个0,每两次走一个1,可以发现走了ttt

2022-03-04 14:14:59 316

原创 AT4119 [ARC096C] Everything on It

https://www.luogu.com.cn/problem/AT4119你说原来那个题面蛮好的你换了它干什么你告诉我截一张qiuly神仙的翻译换汤不换药啊设f[i]f[i]f[i]表示iii种酱

2022-02-25 21:57:26 268

原创 luogu P7603 [THUPC2021] 鬼街

https://www.luogu.com.cn/problem/P7603和gym 102331 F. Fast Spanning Tree 这题一样的套路把监控事件的yyy平均分配到每个管辖的区域里,作为其中一个阈值限制,然后每次加的时候如果有一个点碰到阈值就暴力把剩下的重新分配。假设管辖的区域不超过666个,因为每次碰到阈值,至少会让阈值减少16\frac{1}{6}61​,也就是说至少会变为原来的56\frac{5}{6}65​,容易得到时间复杂度为O(6nlognlog65y)O(6nlo

2022-02-25 16:45:36 777

原创 gym 102331 F. Fast Spanning Tree

https://codeforces.com/gym/102331/problem/F学到许多首先有个显然的性质,假设一条边两边的权值和分别是x,yx,yx,y,这条边的要求是SSS由x+y≥Sx+y \ge Sx+y≥S 可以得到x≥S2  or  y≥S2x \ge \frac{S}{2} \ \ or \ \ y \ge \frac{S}{2}x≥2S​  or  y≥2S​我们把这条边的限制(上界)平均分别丢到

2022-02-25 16:30:25 484

原创 luogu P4119 [Ynoi2018] 未来日记

https://www.luogu.com.cn/problem/P4119第一次感觉自己代码写得好优美,吹爆(bushi)直接考虑最暴力的分块,序列分块+值域分块设bcnt[i][j]bcnt[i][j]bcnt[i][j]表示前iii块,值域在第jjj块的有几个cnt[i][j]cnt[i][j]cnt[i][j]表示前iii块,值域为jjj的有多少个然后查询就可以直接暴力找出位于那一值域块里(用bcntbcntbcnt),然后再一个个暴力找(用cntcntcnt)散块暴力重构即可考虑修改

2022-02-22 18:28:58 207

原创 AT3912 Antennas on Tree

https://www.luogu.com.cn/problem/AT3912想了一会,大概想到了考虑选择的的那kkk个点连起来,一定是一棵树,考虑把这棵树挖掉,剩下的点度数一定都≤2\le 2≤2(原树上),否则一定会存在一对兄弟节点的坐标是相同的那么解法也很简单了,只需要对于每个度数为111的点,暴力往上跳,找到第一个度数≥2\ge 2≥2的,打个标记,容易发现在一个标记下支配的叶子结点最多只能剩下一个不选,那么用叶子结点数减去标记点数即可code:#include<bits/stdc+

2022-02-19 22:02:08 238

原创 AT2300 [ARC068C] Snuke Line

https://www.luogu.com.cn/problem/AT2300重新想的时候又没有想出来首先有一个显然的性质,如果一个区间的长度len≥dlen\ge dlen≥d,那么这个区间的一定能被ddd买到先把区间按照长度排序,比当前ddd大的直接加入答案否则把[li,ri][l_i,r_i][li​,ri​]插入树状数组中,然后暴力枚举kdkdkd,因为是调和级数的,所以最后的时间复杂度为O(nln⁡n+nlogn)O(n\ln n+nlogn)O(nlnn+nlogn)代码实现非常简单

2022-02-19 21:37:00 372

原创 AT3728 [ARC087D] Squirrel Migration

https://www.luogu.com.cn/problem/AT3728想偏了一些首先对于每条边,假设断开后两边的大小分别为s1,s2s1,s2s1,s2,那么答案的上界就是∑e∈E2×min⁡(s1,s2)\sum_{e\in E}2\times \min(s1,s2)e∈E∑​2×min(s1,s2)考虑把重心设为根,容易发现,上面那个min⁡\minmin只会取到子树大小,因为子树一定小于等于另外一部分考虑关于重心的儿子来容斥就行了,设f[i]f[i]f[i]表示钦定有iii个点不合法

2022-02-19 21:23:14 499

原创 AT3576 Popping Balls

https://www.luogu.com.cn/problem/AT3576又盯了半个多小时才看懂之前写的是啥妙妙组合数学思维题啊啊首先不管s,ts,ts,t,要拿红球肯定是从111开始拿,不亏假设要拿第一个蓝球了,那么我们可以把ttt设到当前蓝球第一个位置,不亏假设ttt那个位置已经没有球了,但还是想要拿篮球,那把sss设到现在蓝球的第一个位置,不亏然后就可以考虑计算了假设从ttt处拿了iii个蓝球,那么要从111处拿B−iB-iB−i个蓝球,才能让ttt那个位置没有球,进入第三步假设从

2022-02-19 10:41:32 362

原创 AT2046 [AGC004F] Namori

https://www.luogu.com.cn/problem/AT2046写这题的时候完全没有想清楚啊啊重新看的时候盯了一个小时都没有看懂我在写啥神仙思维分析题树首先考虑树的情况,可以把原图二分图染色一下,然后每次同色的取反就变成了异色的交换原问题变为是否能把所有的黑白点位置交换摸张官方题解的图把给点记为111,白点记为−1-1−1,a[u]a[u]a[u]为子树和显然a[rt]=0a[rt]=0a[rt]=0,答案的下界为∑∣a[rt]∣\sum |a[rt]|∑∣a[rt]∣不

2022-02-19 09:32:13 198

原创 CF765F Souvenirs

https://www.luogu.com.cn/problem/CF765F挺不错的一道题,首先考虑扫描线,对于每个iii,找j<i,a[j]>a[i],jj<i,a[j]>a[i], jj<i,a[j]>a[i],j最大的用权值线段树可以轻易维护假设找到一个jjj,然后再找(a[i],a[j])(a[i],a[j])(a[i],a[j])之间的时间复杂度不优考虑再找到的一个是j′j'j′发现必须要满足a[j′]−a[i]<a[j]−a[i]a[j']

2022-02-18 19:20:51 386

原创 luogu P7446 [Ynoi2007] rfplca

https://www.luogu.com.cn/problem/P7446有个地方写错了两次竟然还都过了类似弹飞绵羊,维护从每个点第一次跳出当前块是跳到哪个节点,记为tt[i]tt[i]tt[i], 往前跳一次的记为to[i]to[i]to[i], 给整个块打标记的时候,如果存在一个点不能一次跳出当前块,就暴力把块重建一遍。因为每次至少往前跳一次,所以每个块最多重建n\sqrt{n}n​次,每次重建n\sqrt{n}n​,一共n\sqrt{n}n​个块,所以这部分的总时间复杂度是O(nn)O(n\sq

2022-02-18 11:14:44 136

原创 luogu P5406 [THUPC2019]找树

https://www.luogu.com.cn/problem/P5406首先要意识到这题不是最优化问题,而是计数类问题(光这点就不简单了)考虑矩阵树定理计算的是什么∑T∏we∈T\sum_{T}\prod w_{e\in T}T∑​∏we∈T​这里∏\prod∏不一定是乘法,题目给出的这几个运算爷可以于是乎可以构造集合幂级数xwx^{w}xw,注意到FWTFWTFWT是线性运算,可以叠加,先FWTFWTFWT完,求个行列式,然后再IDFTIDFTIDFT回去即可code:#include&

2022-02-18 09:24:37 196

原创 luogu P4292 [WC2010]重建计划

https://www.luogu.com.cn/problem/P4292感觉长链剖分的难点在于指针的使用具体实现看代码吧,关于每往上继承一个要加一条边的权值,可以利用差分的思想code:#include<bits/stdc++.h>#define N 500050#define db double#define ll long longusing namespace std;struct edge { int v, c, nxt;} e[N << 1

2022-02-17 20:38:09 291

原创 CF1267G Game Relics

https://www.luogu.com.cn/problem/CF1267G麻了,回头看的时候一下子不会算贡献了白写了可还行首先考虑抽卡的期望,假设已经抽了iii个圣遗物出来,要出i+1i+1i+1个圣遗物的期望是E(i)=in(E(i)+x2)+n−in×(x+E(i+1))E(i)=\frac{i}{n}(E(i)+\frac{x}{2})+\frac{n-i}{n}\times(x+E(i+1))E(i)=ni​(E(i)+2x​)+nn−i​×(x+E(i+1))E(i)−E(i+1)

2022-02-17 08:24:16 173

34枚金币时间管理法模板

想管理好自己的时间吗?快用34枚时间管理法吧,这里有现成的模板,来下载吧QAQ

2018-10-12

空空如也

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

TA关注的人

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