随笔分类 -  其他-折半搜索

摘要:题目 传送门 题解 考虑二分一个 x,看一看在 [1,x] 中的合法数是否有 k 个 如何计算?我们考虑折半搜索,将 p[i] 分成前一半和后一半,在前一半中枚举 m[i],然后在后一般中看一看小于等于 xm[i] 的数有多少个,累加 阅读全文
posted @ 2020-07-20 09:12 Arextre 阅读(83) 评论(0) 推荐(0) 编辑
摘要:题目 传送门 题解 考虑先将每一位上单独异或一个 1 所有数会使 a[i] 发生什么变化,可以这样预处理出来: inline void Getcnt(){ rep(i,0,MAXK){ rep(j,1,n)if((a[j]^(1<<i))<a[j])cnt[i][j]=-1; else 阅读全文
posted @ 2020-07-20 09:01 Arextre 阅读(113) 评论(0) 推荐(0) 编辑

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