摘要:KMP模板 1.next数组的实际含义 next数组从-1开始,主串a,子串b,next[j]=k,满足b[0,k-1]==b[j-k,j-1],k同时也为b子串前缀的下标,j为b子串后缀的下标 get_next函数如下: void get_next(string b,int *next) { in 阅读全文
posted @ 2021-04-08 20:38 gonghw403 阅读(5) 评论(0) 推荐(0) 编辑
摘要:1.n叉树父子关系公式: 第i个节点,父亲为第j个节点,公式如下: j = [(i-2) / n] + 1 (其中[]表示括号内 向下取整 ) 2.LCS(最长公共子串)dp 做法 (子串不一定在主串中 连续 ) 和01背包类似,分为相等或不相等, dp[i][j]表示a主串中第i个字符,j表示b主 阅读全文
posted @ 2021-03-21 17:36 gonghw403 阅读(3) 评论(0) 推荐(0) 编辑
摘要:一个规律题目要多做多积累 , 脑子不太灵活 CF1487 Cat Cycle 题目大意: 两只猫A,B, A猫从n → n-1 → n-2 ... → 1 → 2 ... → n ; B猫从1 → 2 → ... → n → n-1 → ... → 1 当两猫要相遇时,B猫往所移动得方向+1,而A猫 阅读全文
posted @ 2021-02-16 23:30 gonghw403 阅读(64) 评论(0) 推荐(0) 编辑
摘要:2020.12.20 求质因数的方法 CF1444A Division #include<bits/stdc++.h> #define ll long long #define fp(i,a,b) for(int i=a;i<=b;i++) #define sfp(i,a,b) for(int i= 阅读全文
posted @ 2021-02-12 20:59 gonghw403 阅读(23) 评论(0) 推荐(0) 编辑
摘要:**树状数组的操作以及运用** 小萌新学完树状数组神奇操作以后,初步认识到了数据结构的强大 tqi! 博客记录一下学习,树状数组主要是对数据的离散化处理,把原本n的复杂度降为logn,整体思想跟二分类似,用二进制的形式对数进行类似的处理。 1. 树状数组的离散化处理 (定义) 用d[]数组作为树状数 阅读全文
posted @ 2021-02-11 15:17 gonghw403 阅读(22) 评论(0) 推荐(0) 编辑
摘要:新生赛以后就正式成为一名acmer啦 虽然没有打过比赛呜呜呜 要好好学算法,拿一个牌牌嘛 这里就记录算法学习情况,也怕自己偷懒,学一个就记录,看看长时间拖更就是在摸鱼,摸鱼和鸽子都是本质 ,加油! 开坑时间 2020.12.9 2020.12.9 今日快排走起(加模板) quicksort! voi 阅读全文
posted @ 2021-02-10 12:59 gonghw403 阅读(29) 评论(0) 推荐(0) 编辑
摘要:初次意识到程序的时间复杂度(tle多了 ) 第一次写博客(被大佬们的博客所折服orz) 拿打素数表的程序为例 优化前代码: #include<iostream> #include<cmath> #define ll long long using namespace std; int a[10000 阅读全文
posted @ 2021-02-09 22:30 gonghw403 阅读(12) 评论(0) 推荐(0) 编辑