上一页 1 2 3 4 5 6 7 8 ··· 26 下一页
摘要: 题意:强制在线多次询问区间[l,r]内的最大连续异或和. 题解: 对序列进行前缀异或和,将问题转化成求区间[l-1,r]中的最大的两数异或和. 两个数的限制十分麻烦,尝试分块. 预处理数组f[i][j]表示第i块的最左端到j的这段区间最大的两数异或和. 显然这个数组可以在O(sqrt(n)*n*32 阅读全文
posted @ 2017-05-05 10:24 CHADLZX 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 《做人要有梦想系列》 题解: 强制在线多组询问求开端在[a,b],结束在[c,d]的子序列的最大中位数。 若有两个中位数取最大的中位数。 1.如何处理中位数最大的限制? 答:二分答案,将大于等于x的数设为1,将小于x的数设为-1,[b,c]的一定要,[a,b)要rmax,(c,d]要lmax即可. 阅读全文
posted @ 2017-05-04 22:22 CHADLZX 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个序列,每次询问区间 [l,r] 内是否存在一个长度为K的子串. 由于K是固定的,字符串hash再离散,然后问题转化成了询问区间[l,r]内是否存在一个要求的数. 可持久化线段树可切,离线乱搞同样支持,可以试下可持久化01Trie. 1 #include<algorithm> 2 #in 阅读全文
posted @ 2017-05-04 19:51 CHADLZX 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 做这题要知道一个技巧是可以用Trie树来查找与一个数异或第K大/小的数字. 套一个堆,这题就做完了. 1 #include<cstdio> 2 #include<algorithm> 3 #include<queue> 4 using namespace std; 5 #define ll long 阅读全文
posted @ 2017-05-04 16:59 CHADLZX 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 题解: 首先从基环树上的环上选两个点x,y 断开x,y之间的边,然后做树形DP. 设f[x]为选x的情况下的最大值,g[x]为不选x的情况下的最大值. 分两种情况讨论, 1.选x,则y一开始就处于被支配状态,在计算y的f[]函数值时需要特判. 2.不选x,按正常DP做即可. 1 #include<c 阅读全文
posted @ 2017-05-04 15:20 CHADLZX 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 这道题感觉有点意思. 由于每个B串中每个点的在A串中匹配位置只有常数个. 因此对于每个点可以枚举在A串中的匹配位置,然后此处的函数值需要更新为max(f[i],max(f[j])+1); 1<=j<i 这道题也就被转化成了动态前缀最大值问题,线段树可切,但更方便的是树状数组. 1 #include< 阅读全文
posted @ 2017-05-04 11:17 CHADLZX 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 数论重学篇. 首先需要看出答案是: n!/m!*phi(m!) 小于m!的数中与m!互质的数有phi(m!)个,由辗转相除法可知, gcd(x,m!)=1 <==> gcd(x+m!,m!)=1 然后直接算就行了. 1 #include<bits/stdc++.h> 2 using namespac 阅读全文
posted @ 2017-05-04 10:28 CHADLZX 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 一道带权并查集题目. 带权并查集的重点是信息的合并. 这类题出现得并不多,练习一下. 1 #include<bits/stdc++.h> 2 using namespace std; 3 #define ll long long 4 #define FILE "dealing" 5 #define 阅读全文
posted @ 2017-05-04 09:32 CHADLZX 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 一道简单的数位DP. 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 #define ll long long 6 #define FILE "dealing" 7 #defi 阅读全文
posted @ 2017-05-04 08:56 CHADLZX 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 递推; 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 #define ll long long 6 #define FILE "dealing" 7 #define up(i 阅读全文
posted @ 2017-05-04 08:30 CHADLZX 阅读(98) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 26 下一页