摘要: Manacher 快速查找回文串 这个算法其实是基于暴力查找回文串的优化。 while(i-k>=0&&i+k<n&&s[i-k]==s[i+k]){ k++; } 这就是暴力查找以s[i]为中心点的奇数长的回文串,偶数也一样就是改一下下角标就可以。 这个算法的优化其实就是以s[i]为中点的回文串, 阅读全文
posted @ 2024-03-31 17:06 zyzzzzlh 阅读(30) 评论(0) 推荐(0)
摘要: 天梯赛2 7-10 红色警报 这道题的题意要注意是删去一个城市后增加了多少个区域,而不是有多少个城市变成了单独的点,赛时理解错了题意,用set做会有点有问题。其实很简单,就是bfs搜一下有多少个联通块,每次删除把被删的点打个标记,每次联通块的个数和上一次的比较一下,只要增加就是改变了连通性,这样判断 阅读全文
posted @ 2024-03-31 12:44 zyzzzzlh 阅读(37) 评论(0) 推荐(0)
摘要: 寒假训练营2 D 这道题的题意很简单,有k张技能牌,每张技能牌可以把前\(a_i\)张牌放到最下边,消耗\(b_i\)的花费,现在我们需要的牌在从下往上的第k张,要变到第一张,花费最小的方式。建图的思路就有了,边权就是花费,也就是最短路问题,但是边很灵活,每个点都能建出m条边。 点击查看代码 voi 阅读全文
posted @ 2024-03-12 23:10 zyzzzzlh 阅读(29) 评论(0) 推荐(0)
摘要: 周二天梯训练赛 天梯选拔赛一 A 这个题就是每次看到'.',就在它后面放一串英文字符"xixixixi." L 其实就是看完整过了多少个视频,以及剩下的那个视频有没有播放到第m秒。 J 这个题wa了六发,好离谱,题读错了,其实就是每次都减去当前这个数字里任意一个数位,那我们就能有一个贪心思路,每次都 阅读全文
posted @ 2024-03-08 20:52 zyzzzzlh 阅读(31) 评论(0) 推荐(0)
摘要: 本周训练 周四 三个人拉了一场组队赛,这套题前期开题很顺,但是卡的字符串题其实也没有很复杂,给你一个字符串,规定某些字母是狂暴因子,可以选择多少个不同的子串包含k个狂暴因子,那就是看左右有多少个可选可不选的,题面不难,就是处理边界问题。 周六 网络赛卡在了建图和期望题,建图题其实思路出的很快,但是实 阅读全文
posted @ 2023-09-24 20:08 zyzzzzlh 阅读(53) 评论(0) 推荐(0)
摘要: [大佬的讲解](https://blog.csdn.net/qq_34181160/article/details/113448738) [视频讲解](https://www.bilibili.com/video/BV1ce411u7qP/?spm_id_from=333.337.search-ca 阅读全文
posted @ 2023-08-08 10:44 zyzzzzlh 阅读(18) 评论(0) 推荐(0)
摘要: ```cpp long long ksm(long long X){ long long sum=1; int N=mod-2; while(N){ if(N&1) sum=sum*X%mod; X=X*X%mod; N/=2; } return sum; } ``` 这就是快速幂的板子,因为要求逆 阅读全文
posted @ 2023-08-03 18:58 zyzzzzlh 阅读(19) 评论(0) 推荐(0)
摘要: 这个的思路就是再开一个数组,存储长度为i的最长上升子序列的最后一个数字是多少,这个数组可以保证递增,之后开始二分,只要当前这个数是大于i-1的数但小于i的数,那就可以更新i的数,这里就是贪心的思想,相同长度结尾数字越小越好 ```cpp int len=0; for(int i=1;i<=n;i++ 阅读全文
posted @ 2023-07-28 19:34 zyzzzzlh 阅读(23) 评论(0) 推荐(0)
摘要: 单源最短路 Dijkstra(只能解决正权边,单源) 它的逻辑可以理解为走当前最近可到达的且无法确定它是不是最短路的一个点,找它的最短路 读入所有的边和边权,再把所有点到起点的距离变为无穷大,自己变为0 点击查看代码 int n,m,s,t; cin>>n>>m>>s>>t; for(int i=1 阅读全文
posted @ 2023-07-27 19:08 zyzzzzlh 阅读(19) 评论(0) 推荐(0)
摘要: 4/29上午 vp cf 868 AB赛时就过了 C 这道题的意思是已知数组a,求出数组b,要求数组的乘积相等且每一个数都是strongly compiste。也就是这个数要拥有非素数非本身的因数,通过观察可得,要不就是两个相同的素数组成,要不就是三个不同的素数。那第一步就是将整个a数组变为素数,然 阅读全文
posted @ 2023-04-30 21:17 zyzzzzlh 阅读(17) 评论(0) 推荐(0)