自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 YJ的2022CSP游记

发现Vs-Dev挂了,心态-=inf(幸好我会4个编译环境),先将T1,T2,的暴力在半个小时内划了出来,再去开T4,一个小时后发现读错题了,就心态有有点小蹦,就立马推出了,k=1的情况,拿了8分就跑路看T3,发现题好长,耐住性子读完后,理解+手玩样例又过了一个点,发现对于我的理解,样例是错的//此时我已经在考场上叫妈了。最后就是检查一下所有的代码的小bug。出考场后,发现是个人都比我高,我giao更难受了,晚上换了新酒店,房间小了点,但是电视的位置很舒服,回看了代码是否有问题,就看了一集仙王3就睡了。

2022-10-30 18:23:44 269 1

原创 P7961 [NOIP2021] 数列

但是优化一下,设dp数组dp[pos][num]表示搜索到第pos位,总和为num时的余下位的权值进行一下记忆化搜索,就可以水到50pts。此题看上去直接暴力dfs,你就可以拿到20pts。

2022-09-29 15:20:39 410 1

原创 P7960 [NOIP2021] 报数

思路其实很简单,就是类似于埃式筛,将1e7内的符合条件的数全部筛出来即可,同时记录一个nxt数组即可。

2022-09-28 21:39:14 142

原创 9.20模拟/2022CSP初赛游记

这几天心情异常平静,但这段时间是最应该斗志昂扬的时候,加油,龑钧。今天终于AK了,虽然今天有点水,但好似已经有好几个月没有AK了。前两天回顾了卷子,发现手残选错了10多分//////////初赛比赛时有点小崩56分///////

2022-09-20 22:39:10 150

原创 YBTOJ 「动态规划」第6章 单调队列全解

设dpi为第i个位置必须删掉,能得到的最小减少量,那么答案就是dp[n+1]每一个子串用KMP跑一遍,记录一下每一个位置之前的最近的违禁单词起始位置。和的最小值,运用两次单调队列找到区间内的上一个位置的最小值即可。那么用单调队列维护维护的范围也有了,那么就直接开干就行了!还是二分,单调队列维护的是区间最小值,最后判断的时候要从。很明显的单调队列维护:维护符合范围的dp最大值,直接用。时,只有k时在一直变化的,所以,我们可以单调队列维护。在不断变化,于是可以想到找区间内的最小的。首先时很明显的二分,设。

2022-09-15 15:45:18 330

原创 20220913模拟

T3:读完题,心情--,头疼感++,感觉bfs可以做,但相当麻烦,还不想摆,就硬着头皮直接敲,于是就寄的离谱,正解用的是dijkstra,有点小蒙(这不就是bfs典型题吗),仔细看后发现dijkstrs优化了多,而且这种算法也支持动态建边/😓。LZB,你是否清醒 ,下次继续努力吧!实际:100+100+0=200 寄。,反正十几分钟就切了。期望:100+100+0;T1:裸的欧拉函数,直接秒。

2022-09-13 22:32:35 122

原创 9.8 模拟

写在最后:这次没挂分,但是不理想,csp与noip马上就要来了,感觉这两个月的水平已经有了质的飞跃(奆佬勿喷),但是还有很大的提升空间,最近得更加抓紧时间,多做题多总结,不辜负自己,总之就像今天的T2,明明可以做到更好,但为什么不呢?T2很容易根据lca思想想到直接去遍历树,并看每一条路径中恶少边的数量与国有边的差值,如果小于0,提出来放到一个集合里处理,but这知识蒟蒻考场上的30分做法,正解用的是deque(其实更好的利用了dfs的性质)可以遍历树的时候直接动态处理点。期望 100+30+10。

2022-09-08 23:45:45 88

原创 9.6模拟

T2:找n个区间中第k小的数,我应该大意了,写了个优先队列优化,算了个时间复杂度为nlogn,但是我忽略了还有一个为2000000000的常数,就T挂了60分。挂分最主要原因:又开define int long long 数组开大十倍不止,总之各种地方的卡常,正解:二分第k大的数,找分别去判断是否合理即可时间复杂度nlog(maxn-minn+1)最近新题单就要建好了,赶紧去刷,感觉最近刷题有点不细(不要总用邪教水题,会被ban)期望:100+100+100。实际:100+56+40(悲。

2022-09-06 23:15:25 124

原创 9.2模拟

做题过程:拿到题看完T1很有感觉但感觉暴力不好敲,就看T2发现T2也只会暴力,索性直接开T3,觉得就是一个spfa板子,之后开了T4,写了一个n^2的暴力dp但不会优化,就去开T1,发现T1的实质就是算为一位1的个数为奇数的方案数,30分钟切掉,最后看T2,感觉会30的暴力,本想用平衡树来维护集合的,但是我对自己的平衡树基本功并不自信于是用了小根堆优化,4个点就这样过去了。ans+=tot-cnt[p1]-cnt[p2]+cnt[p1*p2]..........发现系数为莫比乌斯函数,

2022-09-04 10:35:08 124

原创 YBTOJ 树形dp

Link我们用0/10/10/1表示一个点的选与不选那么f[i][1]=f[i][1]+f[to][0]f[i][1]=f[i][1]+f[to][0]f[i][1]=f[i][1]+f[to][0], f[i][0]=f[i][0]+max(f[to][1],f[to][0])f[i][0]=f[i][0]+max(f[to][1],f[to][0])f[i][0]=f[i][0]+max(f[to][1],f[to][0])动态方程就出来了这一板块昨晚,就就发现一个树形dp的共同点:通过dfs对

2022-08-29 21:07:48 152

原创 YBTOJ LCA全集

思路:首先应该生成最小生成树,生成时标记一下,再去遍历未被标记的边,这些边的共性就是出现时间晚,并且长度较大,当我们决定使用这条边时这两个点一定会形成一个环,依据贪心原理,我们因该替换掉两点路径中第一个小于加入边的边,不是最大边!思路比较好想:因为会有重边,而且求的是最大可载重量,于是可以先跑一棵最大生成树,剩下的就是来维护两点之间的最小值,而最小值与上面的就全长有异曲同工之处,找到两点到lca的最小值。的边,显然这些边都要被修改,也就是找到一条边,这一条边所有的大于。,使俩端点的差分数组++,而。

2022-08-25 10:52:50 163

原创 YBTOJ 线段树全家桶

这两天可算是把线段树的题刷完了,感觉线段树更熟练了(😓板子题,甚至不涉及到pushdown,直接修改即可CodeB. 【例题2】区间查改板子plus 对于这里不用一个一个的去修改,,如果一个区间在修改范围内,不妨将直接将其区间总和加上 v×(r−l+1)v\times (r-l+1)v×(r−l+1) 同时记录一个懒标记,如果之后修改的区间在其之内就将其下放,大大节约修改时间CodeC. 【例题3】公园遛狗思路 计算区间最大连续子串和,我们对于一颗树需要维护有三个变量:区间最大子串和、

2022-08-23 20:28:46 168

原创 YBTOJ H. 4.超级钢琴

做开头,再找i+l-1~i+r-1的前缀和最大值(用RMQ解决),再将这些值压入堆中(思路:对于一个和弦的值,很容易想到用前缀和化,而我们要做的就是对于每一个位置。

2022-08-22 22:45:37 123

原创 YBTOJ C. 【例题3】不定方程

的约数,所以先算n以内的质数,再计算每个质数出现的次数,即可。

2022-08-21 07:40:50 105

原创 YBTOJ E. 【例题5】余数之和

的一定时,i是有范围的,在k/i!=0时,很容易得到i的最大值为。思路有点巧妙,其实可以。

2022-08-21 07:40:17 87

原创 YBTOJ E. 1.合法序列

找到两个当两个前缀和mod k值相等时 就证明这里有一个子序列(

2022-08-21 07:39:56 74

原创 YBTOJ B. 【例题2】质数距离

拿到数据后,其实不难发现我们不必要去处理所有的质数,我们只需要将R开根号后的数内的质数求出来然后再进行一遍埃式筛,就可以得到答案了!题面很简单,但当时怎么都做不出(又看题解,又看博客的,现在看好水)

2022-08-20 20:41:02 128

原创 YBTOJ C. 【例题3】与众不同

思路:首先应该想到dp,我们约定pre[i] 为i号位为结尾的数的起始位置,f[i]为i号位为结尾的最长序列长度,不难得到 pre[i]=max(pre[i-1],last[a[i]]+1) f[i]=i-pre[i]+1。因为上面的式子可以得到pre[i] 为一个单调不降序列,于是我们可以用二分来寻找分界点,那么第二种序列长度就为pos-l+1,下面就是处理第一种答案了,这里运用。对于一个访问区间有两种序列长度:1.整个序列被包含在区间内 2.整个序列被不完全包含在区间内。算法来加速区间最大值查询。

2022-08-20 20:25:35 210

原创 YBTOJ F. 【例题6】矩阵修改矩阵查询

写到这里鄙人的差分来搞树状数组区间问题也算是正式理解了 撒花花~~~~中学会了一种区间查改方法,就是。通过类比以为可以化简得到。这里很显然我们只需要维护。注意:访问的时候注意容斥。根据差分我们可以推得。对于区间修改,我们在。

2022-08-20 19:55:14 161

原创 YBTOJ C. 【例题3】严格上升子序列数

【代码】YBTOJ C. 【例题3】严格上升子序列数。

2022-08-20 12:13:42 108

原创 YBTOJ H. 4.火车载客

细节:1.对于数据需要先进行排序 2.先下后上 3.对于每一次处理,上车时需要对原数据的标记进行处理(有点抽象,看code。:每次如果车上有空的话,就尽量让最多的人上车,如果不空,就让后下车的部分人下车,换上早下车的人(小总结:思路不难想,但是实现有点烦人,借鉴了许多代码(((这里需要维护一个结束站点的大根堆。

2022-08-20 11:51:48 118

原创 YBTOJ F. 2.选数游戏

每一次根据贪心,每一次加入n个数,如果加入的数超过n个,那么就将最小的元素弹出n-1个(因为要保证1~x中每一列至少1个在队内。记录弹出数的最大值,好让空隙填补。思路:从左到右依次遍历。

2022-08-20 11:28:11 797

原创 YBTOJ I. 5.宫室宝藏

难点:建图,如果每一行全是横门或每一列全为纵门那就需要O(n^2)来建图,直接炸。每一行的横门的集合为强连通分量,每一列的纵门的集合为强连通分量。思路:缩点+拓扑dp。

2022-08-20 10:28:55 146 1

原创 YBTOJ H. 4.软件安装

当一个超级源为根时的最大值。

2022-08-20 09:34:37 73

原创 YBTOJ G. 3.删点次数

g[x]=max(g[x],g[col[v]]),在比较时要加上自己本身——>ans=max(ans,g[x]+=scc)方法:先缩点形成一张DAG,让后再倒着寻找(设g[x]表示以x号颜色为结尾的最大链所包含的点。思路:很显然找最大链。

2022-08-20 08:36:56 83

原创 YBTOJ C. 【例题3】最大半连通子图

在一个有向无环图中的“半联通”就是一条链(因为一条链中的任意两个点都满足定义。毕竟强连通分量一定是半联通的,那么第一问而言就是找一天最大链。这样就生成了一个有向无环图~,而第二问就是找最大连的条数。注意:重新建边的时候需要去重。

2022-08-20 08:14:16 99

原创 BSGS/EXBSGS

于是我们可以分别遍历等式两边的取值,第一次相等时,即可求出最小值。=1(b=1时令x=0),现在要求你计算一个最小的非负整数。一定比p小,所以可以一直约到。注意:b除以na时需要求逆元。其实就是不保证a与p互质(是一个循环节,不难暴力~于是乎 我们还可以得到。...

2022-08-02 21:42:42 89

原创 卢卡斯定理

定理是用来求C(n,m)modp的值。其中n和m是非负整数,p是素数。一般用于m,n很大而p很小,或者n,m不大但大于怕、,这样用阶乘就解决不了问题。

2022-07-31 21:14:13 252

原创 欧拉函数,定理性质笔记

φ(x)xxφ(1)=1φ(x)=x∏i=1n​(1−pi​1​)p1​.....pn​xm,nf(m∗n)=f(m)∗f(n)pφ(p)=p−1nφ(n)∗n/2(n>1)nnpn=pkφ(n)=pk−pk−1n>2φ(n)n=pkφ(pk)=pk∏i=1n​(1−pi​1​)=

2022-07-31 12:29:16 80

原创 中国剩余定理/扩展中剩余定理

在《孙子算经》中有这样一个问题“今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余3),七七数之剩二(除以7余2),问物几何?”这个问题称为“孙子问题”,该问题的一般解法国际上称为“中国剩余定理”。类比古人我们假设n1除以3余2,n2除以5余3,n3除以7余2;且n1+n2+n3满足。......

2022-07-26 22:59:14 177

原创 乘法逆元初步

定义ax≡1(%m)ax≡1(%m),那么就称x是a在modm下的逆元。

2022-07-26 22:01:04 117

原创 扩展欧几里得讲解

当b≠0时就先算出当a=b,b=amodb时等式成立的x和y,显然新的a和b的最大公约数和原来是相同的。当b=0时,a就是这两个数的最大公约数,所以x=1,y=0时就满足等式。当求ax+by=c时,我们只需要将答案都*(c/gcd(a,b))即可。1.令x’y’,满足。...

2022-07-26 20:44:41 96

原创 素数筛(普通,埃式筛,线性筛)

因为要保证每一个数只被筛一次,所以筛到p[j]*i并且i%p[j]==0,说明下面的数可以被质因数分解为多个质数,因为线性筛只找出一个质数即可,之后会重复,所以需要跳出(牢记)还是遍历小于n的数,除1外,如果这个数是第一次被筛到,那么他就是质数,之后我们将找到质数的小于n的倍数全部标记为不是质数!这样就可以解释为什么未被标记的的数是质数——因为小于他的质数没有可以将其质因数分解。埃式筛虽然在普通方法上有所提升,但是还是有些数会被重复判断。与队列中的数相乘所得到的数标记不为质数。...

2022-07-26 19:48:56 149

原创 YBTOJ D. 【例题4】超市购物

我们将价值按从大到小排序,并且每一个物品的出售日期尽量拍后,如果这一天被占完后,下一个与之同日期的物品应排到前一天。

2022-07-24 15:35:17 207 1

原创 YBTOJ C. 【例题3】食物链

知道这些后事情就好办了如果让两个物种同类,就判断两个物种是不是可以分别为猎物。总结最近第一次做题时思路还是太少了,还要多做啊~~~~如果让x吃y,就判断两个是否同族或者x是否为y的猎物。思路将一个并查集分为三个部分——x+n*2代表x的敌人。...

2022-07-24 14:39:52 177

原创 YBTOJ I. 5.最小距离和

回到三维,将所有点的(x,y,z)分别排序,分别建立三组最短边,将三组最短边集放在一起排序,再建立最小生成树,这样得到的结果,就是在三维最优中的最优结果。读完题,最小生成树的算法就可以直接确定了,但是我们如果每一点依次去找最小路径,再建树的话,时间复杂度为O(n^2),直接喜提TLE大礼包;...

2022-07-24 14:22:25 179

原创 YBTOJ H. 4.保留道路

再来处理s,对于s,我们每一次只新增一条边,在如果处理边的s小于队列中最大s,则可利用插入排序原理将此边加入边的队列,并且每一次处理完之后都生成一次最小生成树,如果最小生成树的边==n-1的花就进行一次ans的赋值。注意1.队列中边数最大值只能等于n-1,所以每一次完成一次生成树之后,top=使用的边数。2.对于每一次使用的边,将其队列位置更新(因为之前未使用的边之后也不可能比此时情况更优。其实就是运用贪心思想——先将各个边按g的大小排序这样在后面处理时就可以不考虑g了。拿到题的时候没太看懂了题意,...

2022-07-24 12:11:11 119

原创 YBTOJ G. 3.生物进化

找到一个点后激活与之相连的边,同时将其他未归入答案集的点相连的边更新(更新边的长度时别忘了更新最近祖先)对于1号点,我们可以辐射与之关联的点,并从中找到最短边,将此边与之相连的点归入到答案中。题目大意就是找到每一个点的最近祖先,同时规定1号点是总祖先。...

2022-07-20 20:52:13 163

原创 银河英雄传说 题解

30000,让第i号战舰处于第i列,形成“一字长蛇阵”,诱敌深入。,含义为第i号战舰所在的整个战舰队列,作为一个整体(头在前尾在后)接至第j号战舰所在的战舰队列的尾部。该指令意思是,询问电脑,杨威利的第i号战舰与第j号战舰当前是否在同一列中,如果在同一列中,那么它们之间布置有多少战舰。所以合并时,先将父节点替换,再将shun[i]+=shu[j],同时将shu[j]+=shu[i];作为一个资深的高级程序设计员,你被要求编写程序分析杨威利的指令,以及回答莱因哈特的询问。.........

2022-07-20 20:05:19 196

原创 YBTOJ F. 2.序列破解

YBTOJ F. 2.序列破解 最小生成树

2022-07-18 18:20:06 156

空空如也

空空如也

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

TA关注的人

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