03 2021 档案

摘要:CF362C Insertion Sort(DP) 传送门 题意:给一个排列,求对任意两个元素交换后,使总逆序对最小的方案数。 题解:首先要想到交换元素的贡献怎么算。 可以分成5份分析,设x,y交换: 1,p<x 对于p<x的情况,无论后面怎么变,p<x中的逆序对不会改变,对后面元素也不会造成影响。 阅读全文
posted @ 2021-03-31 11:06 ccsu_madoka 阅读(123) 评论(3) 推荐(0) 编辑
摘要:CF709 C. Skyline Photo(线段树优化DP) 传送门 题意:给两个数组,分别表示分数和高度,你可以将数组分成若干段,每段贡献为其高度最低的分数,求最高分数和。 题解: 好题,首先先考虑n*n做法,f[i]表示将前i段分成若干段的最大值,则f[n]即表示答案,易得递推方程:f[i]= 阅读全文
posted @ 2021-03-30 14:09 ccsu_madoka 阅读(99) 评论(0) 推荐(0) 编辑
摘要:牛客 栗酱的数列 (KMP) 传送门 题意:给a数组(n),b数组(m),模数k。问a有几个子串满足1<=i<=m,(a[i]+b[i])%k都相等。 题解:暴力匹配超时,这时候想到子串匹配算法KMP,但主要是有一个C=(a[i]+b[i]),要求一个串的值都等于C,而在一次匹配成功后,C可能会改变 阅读全文
posted @ 2021-03-27 00:26 ccsu_madoka 阅读(81) 评论(0) 推荐(0) 编辑
摘要:牛客 动物园 (KMP) 传送门 题意:给一个字符串求num数组的乘积,num数组是前缀与后缀相同的个数,且前后缀不相交的个数; 题解:求KMP,易得长度为i的字符串不能由nex[i]>i/2的位置转移,且明显有单调性,所以我们可以从后,用类似并查集路径压缩的方式修改nex数组与num数组,并时间约 阅读全文
posted @ 2021-03-26 23:18 ccsu_madoka 阅读(67) 评论(0) 推荐(0) 编辑
摘要:网络流模板与经典模型 1.模板 dinic模板(常规的最大流模板,算法效率能满足大部分题) #include<iostream> #include<queue> #include<cstring> #include<algorithm> using namespace std; #define ll 阅读全文
posted @ 2021-03-12 11:42 ccsu_madoka 阅读(89) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示