摘要: 滑动窗口:有两个指针L,R。加入一个数R往右移动,减去一个数L往右移动。 一般需要维护窗口中的最大值或者最小值,询问复杂度可以可以O(1)。 一般需要双向队列的辅助,例如题目:滑动窗口 假设是一个需要维护最大值的窗口,那么双向队列里的数组应该是“大->小”, 为了满足这个条件,后面加入数x时,需要把 阅读全文
posted @ 2020-04-12 16:39 SummerMingQAQ 阅读(1102) 评论(0) 推荐(1) 编辑
摘要: 反素数的定义: 对于任何正整数,其约数个数记为,例如,如果某个正整数满足:对任意的正整 数,都有,那么称为反素数。 或者: 一个[1,n]的连续区间, 约数相同的最小数x,x是反素数。例如:f(6) = 4,f(8) = 4,6是约数为4切最小的数,所以6是约数。 反素数性质: 反素数肯定是从2开始 阅读全文
posted @ 2020-03-25 18:17 SummerMingQAQ 阅读(758) 评论(0) 推荐(0) 编辑
摘要: 理解:二进制末位次方为该位置管辖的范围,无法管辖的范围就是该数减去该二进制末位次方,递推往上,直到得到[1,n]的管辖点,然后相加。某个位置修改,会导致管辖它的点也相应被修改,这关键就是二进制的进位来更新管辖它的点,2^0一定被2^1管辖,2^1一定被2^2管辖。因为二进制的独特性,把这些最关键也是 阅读全文
posted @ 2020-03-13 23:43 SummerMingQAQ 阅读(314) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2022-08-24 13:19 SummerMingQAQ 阅读(0) 评论(0) 推荐(0) 编辑
摘要: /* USE sql_store; #使用 name数据库 SELECT * # (明确获得的列) (*)所有列 customer_id, first_name (选这两列) FROM customers # (明确查询的表) 从 custermers 表中选择 WHERE customer_id 阅读全文
posted @ 2022-01-25 12:17 SummerMingQAQ 阅读(21) 评论(0) 推荐(0) 编辑
摘要: class A { public: int m_a; A() : m_a(0) { std::cout << "A()" << std::endl; } A(const A& other) : m_a(other.m_a) { std::cout << "A(const A&)" << std::e 阅读全文
posted @ 2022-01-21 20:43 SummerMingQAQ 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 1 class A { 2 public: 3 int m_x; 4 5 A(int x) 6 : m_x(x) 7 { 8 std::cout << "A(int )" << std::endl; 9 } 10 A(const A& a) 11 : m_x(a.m_x) 12 { 13 std:: 阅读全文
posted @ 2022-01-20 21:45 SummerMingQAQ 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 传送门 1 /* 2 思路:把 a1 + a2 + ... + an >= x * (r - l + 1) 3 > a1 + a2 + ... + an - x * (r - l + 1) >= 0 4 可以等价为对于每个(ai - x) 得到新的ai,则题目变为对于任意区间[l, r], al + 阅读全文
posted @ 2022-01-06 16:37 SummerMingQAQ 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 传送门 思路: 从k = 2 * x - y ==> 2 * x = k + y ,可以看出x是k,y的中间值,则如果存在x1,x2,且x1 = x2 ± 1,则通过x1,x2可以得到所有整数,则任意的k都成立。 例如:2 3 > 2 3 4 > 1 2 3 4 ...... 对于该数组A: (0 阅读全文
posted @ 2021-02-15 23:11 SummerMingQAQ 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 传送门 注:把大于m的ai自身看作没有价值,即价值为0 补:图中方块长度为4是错的,应该是3.即20覆盖0 0 0 18覆盖 1 2 2 17覆盖2 4 5 1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 #inc 阅读全文
posted @ 2021-01-16 21:30 SummerMingQAQ 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 传送门 思路:我们需要满足 x + y > z , x + z > y , y + z > x .因为 A <= X <=B <= Y <= C <= Z <= D,所以 X + Z > Y和 Y + Z > X明显一定满足,所以我们只需要确定X + Y > Z的个数了.X∈[A,B],Y∈[B,C 阅读全文
posted @ 2021-01-16 01:16 SummerMingQAQ 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 传送门 思路:对于一般情况,我们有三个袋子,容易想到把袋子里物品的价值排序。然后贪心,我们想让最后的价值最大,则三个袋子最后都可以剩余一个物品,这三个物品总和需要最大,最好的情况就是三个物品的符号“+”,“-”,“-”,这样总价值直接可以算是每个袋子中物品绝对值的累加和。为了让三个物品价值最大,我们 阅读全文
posted @ 2021-01-09 02:51 SummerMingQAQ 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 传送门 思路:“Dreamoon will choose a number pipi from range [1,n−li+1](inclusive) and will paint all cells from pipi to pi+li−1(inclusive) in ii-th color.”可 阅读全文
posted @ 2020-12-31 20:41 SummerMingQAQ 阅读(249) 评论(0) 推荐(0) 编辑