博客园 首页 私信博主 显示目录 隐藏目录 管理 动画

随笔分类 -  其它——二分 & 带权二分

摘要:有一个长为$n$的二进制串,保证$01$都存在。你可以询问不超过$15$次,每次询问你给出一个长为$n$的二进制串,交互库会返回你的串和目标串的不同位的数目。求任意一个$0$和$1$的位置。 阅读全文
posted @ 2018-08-27 18:08 SovietPower 阅读(341) 评论(0) 推荐(0)
摘要:Glad to see you! 阅读全文
posted @ 2018-07-28 19:06 SovietPower 阅读(218) 评论(0) 推荐(2)
摘要:给定一个$1$到$n$的排列,$m$次两种操作: 1. 将$[l,r]$中的数升序排序 2. 将$[l,r]$中的数降序排序 最后询问$q$位置上的数字是多少。 $n,m\leq 10^5$。 阅读全文
posted @ 2018-07-12 16:14 SovietPower 阅读(187) 评论(0) 推荐(0)
摘要:"题目链接" 先考虑 假设S确定,使构造S操作次数最小的方案应是:对T建SAM,S在SAM上匹配,如果有S的转移就转移,否则操作数++,回到根节点继续匹配S。即每次操作一定是一次极大匹配。 简单证明:假设S="ABCD",T有子串"A","AB","CD","BCD",那么步数最小方案是选"AB"再 阅读全文
posted @ 2018-07-01 09:48 SovietPower 阅读(234) 评论(0) 推荐(0)
摘要:by ZBQ 阅读全文
posted @ 2018-06-13 15:01 SovietPower 阅读(280) 评论(0) 推荐(0)
摘要:给定一棵边带权的树。求删掉K条边、再连上K条权为0的边后,新树的最大直径。 阅读全文
posted @ 2018-06-11 10:20 SovietPower 阅读(308) 评论(0) 推荐(0)
摘要:有$n$只精灵,两种精灵球(高级和低级),每种球能捕捉到第$i$只精灵的概率已知。求用$A$个低级球和$B$个高级球能捕捉到精灵数的最大期望。 $n\leq10^5$。 阅读全文
posted @ 2018-06-10 17:34 SovietPower 阅读(224) 评论(0) 推荐(0)
摘要:给定一个无向带权连通图,每条边是黑色或白色。求一棵最小权的恰好有K条白边的生成树。 阅读全文
posted @ 2018-06-10 10:11 SovietPower 阅读(254) 评论(0) 推荐(0)
摘要:"题目链接" $Description$ 在一个$n n$的二维平面中有两个不相交的整点矩形,每次可以询问两个矩形有几个完全在你给出的一个矩形中。200次询问内确定两个矩形坐标。 $Solution$ 容易想到二分。整个矩形好像不好判断?那就每次二分判断矩形两个点的横纵坐标。次数为 8 26 inc 阅读全文
posted @ 2018-05-02 20:46 SovietPower 阅读(295) 评论(0) 推荐(0)
摘要:给定长为$n$的字符串,$m$个三种操作:在$p$处插入字符$c$;将$p$处的字符改为$c$;求以两个位置$i,j$开头的字符串的$LCP$。 $m\leq150000$。 阅读全文
posted @ 2018-04-10 11:31 SovietPower 阅读(174) 评论(0) 推荐(0)
摘要:求第$k$个无平方因子数 阅读全文
posted @ 2018-04-02 19:28 SovietPower 阅读(235) 评论(0) 推荐(0)
摘要:"题目链接" 题意: 在给定矩形区域内找出最少的数,满足和 =k。输出数的个数。两种数据范围。 0~50 注意到(真没注意到...)P[i,j]=v的个数,val[i][j][v]表示(1,1)~(i,j)值 =v的所有数的和。(不要被什么 =v坑,和二维前缀和一样,只是一个点的初始值为A[i,j] 阅读全文
posted @ 2018-03-26 16:43 SovietPower 阅读(208) 评论(0) 推荐(0)
摘要:[TOC] 2018.3.25 Test 时间: 7:30~11:30 (最后半小时不做了) 期望得分: 50+100+20=170 实际得分: 40+44+20=104 总结 T1:善用容斥。 T2:要求输出小数当然有它的道理。。 T3:行列分开考虑。看好怎么取模。如要求最大的答案,然后对答案取模 阅读全文
posted @ 2018-03-25 13:29 SovietPower 阅读(225) 评论(2) 推荐(0)
摘要:"题目链接" $Description$ 给定一段数字序列(Ai∈[1,88]),求最长的两个子序列满足: 1.长度至少为5 2.一个子序列可以通过全部加或减同一个数来变成另一个子序列 3.两个子序列没有重叠部分 $Solution$ 求不重叠最长重复子序列: SA: 首先二分k,判断是否存在长度为 阅读全文
posted @ 2018-03-14 17:54 SovietPower 阅读(273) 评论(0) 推荐(0)
摘要:"题目链接" cpp / 分块。对于块之外的,暴力修改、查询; 对于一整块内的,修改后sort使每一块块有序,询问时二分 =C的位置求个数 / include include include include using namespace std; const int N=1e6+5; int n, 阅读全文
posted @ 2018-02-09 13:33 SovietPower 阅读(164) 评论(0) 推荐(0)
摘要:"题目链接" 最小化最大的一条边,二分答案。然后就变成了给一张无向图定向使其为欧拉回路 二分答案后对于一个位置的两条边可能都保留,即双向边,需要给它定向;可能只保留小的一条,即单向边,不需考虑 如何给它定向呢,或者说怎么形成欧拉回路呢 形成欧拉回路的充要条件:弱连通图;每个点出度=入度 记点i的度数 阅读全文
posted @ 2018-02-05 17:41 SovietPower 阅读(151) 评论(0) 推荐(0)