随笔分类 - 基础算法-二分答案
摘要:[LuoguP5319] [BJOI2019] 奥术神杖 (01分数规划+AC自动机+dp) 题面 神杖上从左到右镶嵌了颗奥术宝石,奥术宝石一共有 1010 种,用数字 表示。有些位置的宝石已经残缺,用 表示,你需要用完好的奥术宝石填补每一处残缺的部分(每种奥术宝石个数不限,且不能够更换未残缺
阅读全文
摘要:[LuoguP4094] [HEOI2016] [TJOI2016]字符串(二分答案+后缀数组+ST表+主席树) 题面 给出一个长度为的字符串,以及组询问.每个询问是一个四元组,问的所有子串和字符串的最长公共前缀长度的最大值。
阅读全文
摘要:[Codeforces 1208D]Restore Permutation (树状数组) 题面 有一个长度为n的排列a。对于每个元素i,表示$\sum_{j=1,a_j include include include include define maxn 200000 using nam
阅读全文
摘要:[BZOJ1074] [luogu 4036] [JSOI 2008] 火星人 (二分答案+哈希+fhq treap) 题面 给出一个长度为n的字符串,m个操作,字符串仅包含小写英文字母 操作1:在k位置后插入字符v: 操作2:将k位置的字符修改为字符v 操作3:查询从该字符串中第 x个字符开始的字
阅读全文
摘要:给出一个长度为n的序列和常数I,定义一次操作[l,r]可以把序列中
阅读全文
摘要:[Codeforces 865C]Gotta Go Fast(期望dp+二分答案) 题面 一个游戏一共有n个关卡,对于第i关,用a[i]时间通过的概率为p[i],用b[i]通过的时间为1 p[i],每通过一关后可以选择继续下一关或者时间清0并从第一关开始,先要求通过所有关卡的时间和不能超过R才算彻底
阅读全文
摘要:[BZOJ 2653] middle(可持久化线段树+二分答案) 题面 一个长度为n的序列a,设其排过序之后为b,其中位数定义为b[n/2],其中a,b从0开始标号,除法取下整。 给你一个长度为n的序列s。 回答Q个这样的询问:s的左端点在[a,b]之间,右端点在[c,d]之间的子序列中,最大的中位
阅读全文
摘要:题面 "传送门" 分析 先考虑的做法,先按s从小到大排序,每个串的数显然形成了n个连续区间,且这些区间的左端点升序排列,然后把区间合并就可以知道有多少个不同的数了 然后考虑优化 对于s[i]产生的区间,我们考虑s[i]和s[i+1]产生的区间之间的间隔 若
阅读全文
摘要:题面 "传送门" 分析 二分答案,考虑如何判定 可以用贪心的方法,每次找最快没电的电脑,在没电前1单位时间给它充电 正确性显然 实现上可以维护一个堆,存储每个电脑电用完的时刻,每次从堆顶取出最小的一个给它充电。设二分值为mid,对于每个电脑记录它的充电次数num[i],则没电的时间就是$\lfloo
阅读全文