摘要: 杭电多校第4场08题。 主席树+二分 看到题目应该是用主席树。当时看到k最大只有169,就想着先找到p在区间内的排名,然后暴力查找,写了好久,代码有点难调,交上去就是RE,应该是WA了,导致异或那步错了,进而导致RE。 题解是主席树加二分,二分答案mid,然后用主席树查询区间l-r内,值域在[p-m 阅读全文
posted @ 2019-07-31 19:09 TLE自动机 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 这篇和上篇POJ2976类似,只是多了一个保存答案,用数组保存即可。 要注意初始化,即我们二分的时候可能永远都更新不了l,即一直执行r=mid,直到退出循环,所以此时我们ans数组就不会更新,因此我们在开始的时候就要初始ans数组,以防这种情况。 例如数据 5 3 0 1 0 1 0 1 0 1 0 阅读全文
posted @ 2019-03-26 21:51 TLE自动机 阅读(113) 评论(0) 推荐(0) 编辑
摘要: https://blog.csdn.net/Hhaile/article/details/8883652 这篇写得挺不错 这个就是入门的01分数规划,二分答案x,将ai-x*bi从大到小排序,去前n-k个,判断是否满足sigm(ai)-sigm(bi*x)>=0,满足 说明还有最优解即更新l=mid 阅读全文
posted @ 2019-03-26 21:47 TLE自动机 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 题目的大致意思是,给你n个数,我们需要计算一个值,这个值是这个序列中的一段连续的子序列里的最小值*这段这段连续子序列的和,我们要使得求得的这个值最大,比如样例6 3 1 6 4 5 2,我们选择6 4 5这段连续的子序列,值为4*(6+4+5)=60。 首先对于每个数a[i],我们想让他最大可能的往 阅读全文
posted @ 2019-03-22 14:46 TLE自动机 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 对于数的范围比较小,我们可以这样来求解逆序对。 树状数组b[val]表示的是val在数组中出现的次数。 我们倒序扫描原数组a,对于位置i,由于树状数组里面保存的是val出现的次数,我们先用树状数组求出当前树状数组中比a[i]这个值小的元素的个数,由于是倒序扫描,之前加入树状数组中的数的位置都在i后面 阅读全文
posted @ 2019-03-16 18:50 TLE自动机 阅读(1634) 评论(0) 推荐(0) 编辑
摘要: 树状数组(Binary Indexed Trees)其代码简洁,第一次遇见就被惊艳到了。 网上讲解也有很多,我就简单总结一下。 树状数组有如下几个基本操作。 首先要了解lowbit运算,二进制分解下最小的2的次幂。 1.查询前缀和 2.单点增加 树状数组的初始化: 阅读全文
posted @ 2019-03-16 18:26 TLE自动机 阅读(1134) 评论(1) 推荐(3) 编辑
摘要: 题目链接 https://vjudge.net/problem/UVALive-3905 第一次学到这个。对于每一颗流星,我们求出它在矩形框内待的时间段 L~R,把L和R按照不同的类型加入结构体。我们先按照时间从小到大排序,然后逐个扫描,遇到左端点L说明这个时刻流星已进入矩形框,个数加1,遇到右端点 阅读全文
posted @ 2019-03-16 10:29 TLE自动机 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 题目的意思是给定两个01序列 第一个序列中如果a[i]为1,表示第i个人可以表演clown,0表示不能表演clown。 第二个序列中如果c[i]为1,表示第i个人可以表演acrobat,0表示不能表演acrobat。 总共两次表演,每次出场n/2个人,且满足表演过的不能再次出场,且第一次出场的可以表 阅读全文
posted @ 2019-03-10 14:12 TLE自动机 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 快速乘+快速幂 计算 ab % p 阅读全文
posted @ 2019-03-10 12:22 TLE自动机 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 题意:是一个城市有两个帮派Gang Dragon 和 Gang Snake,A a b是询问a和b这两个人是不是一个帮派,D a b是这两个人不在一个帮派 每一次A就输出一次。 城市有只有3中人,要么属于S,要么属于D,还有一种未知 这题和奇偶游戏很相似,可以用扩展域并查集,也可以用边带权并查集,感 阅读全文
posted @ 2019-03-09 18:54 TLE自动机 阅读(156) 评论(0) 推荐(0) 编辑