09 2018 档案
RMQ 模板题 poj 3264
摘要:题目:点这里 题意:给一个长度n的数列,然后又Q个询问,问L 到R 中最大值与最小值的差。 分析:RMQ 的模板题。 代码: 用 cin 和cout 会超时…… 阅读全文
posted @ 2018-09-26 16:09 海苔 阅读(211) 评论(0) 推荐(0)
二维RMQ hdu 2888
摘要:题目:点这里 题意:给出一个n*m的矩阵,然后又Q个询问:每个询问有x1,y1,x2,y2,x1,y1为子矩阵的左上角坐标,x2,y2为右上角的坐标。求此子矩阵中元素最大值,判断最大值是否在子矩阵四个角上,在就输出yes,否则输出no。 分析:二维RMQ直接上代码。 阅读全文
posted @ 2018-09-25 22:51 海苔 阅读(158) 评论(0) 推荐(0)
RMQ 的入门 hdu1806
摘要:RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干次询问RMQ(i,j),返回数列A中下标在区间[i,j]中的最小/大值。 这个有很多算法:这里介绍一种比较高效的ST算法解决这个问题。ST(Sparse Table)算法 阅读全文
posted @ 2018-09-25 20:11 海苔 阅读(182) 评论(0) 推荐(0)
dp思维
摘要:题目传输门 题意:有n个房间,m个诅咒,每个房间有一个数值,刚开始有一个初始值,每次进入一个房间可以选择消除诅咒或者不消除,消除诅咒只能顺序消除,消除诅咒就是拿初始值和房间的数值做运算,求最后最大的数是多少。 思路:因为运算是要按顺序的,那么规定dp1[i][j]为前i个数中运算了前j个运算符的最大 阅读全文
posted @ 2018-09-17 15:54 海苔 阅读(211) 评论(0) 推荐(0)
快速幂+地推
摘要:题目传送门 题意:有n个人坐成一圈,每个人都戴着一个面具,面具有0-2^k-1种编号,每相邻的两个人的面具的编号的二进制表示中必须存在至少一位相同,问总共有多少种排列方法。 思路: 我们可以把这个圈从某一处裁开,使之变成一条线,令长度为n的直线上编号两两之间有相同的二进制位的排列方法为line(n) 阅读全文
posted @ 2018-09-12 23:08 海苔 阅读(194) 评论(0) 推荐(0)