摘要:
POJ 3664 排序水题 #include <cstdio> #include <vector> #include <queue> #include <cstring> #include <algorithm> #include <iostream> #include <stack> #inclu 阅读全文
摘要:
开26个multiset,对于aabaaa,遍历,对第0个multiset push 1 2,然后对第一个multiset push 1,然后又对第0个multiset push 1 2,这时第0个multiset size超过3了,删除最小的元素,然后继续push 3,最后取 \(max_{i=1 阅读全文
摘要:
全排列 模版题 AcWing 842. 排列数字 #include <cstdio> #include <vector> #include <queue> #include <cstring> #include <algorithm> #include <iostream> #include <st 阅读全文
摘要:
被前面类似的题禁锢了思路,自己写的双指针,感觉题解很巧妙,记录一下。这个解法不用记录cnt。 通用解法 为了让解法更具有一般性,我们将原问题的「保留 2 位」修改为「保留 k 位」。 对于此类问题,我们应该进行如下考虑: 由于是保留 k 个相同数字,对于前 k 个数字,我们可以直接保留 对于后面的任 阅读全文
摘要:
12月4号完成 阅读全文
摘要:
题意:给一个序列。一个pair,不同时被序列中的某个数整除。求有多少个这样的pair。 题解:也就是他们的gcd并不是某一个数的倍数。只需要做一个gcd卷积。。?后缀和 gcd卷积 #include <cstdio> #include <vector> #include <queue> #inclu 阅读全文
摘要:
jly:开始的想法:首先枚举max的位置。包含它的一定是全加,剩下的一定都不加。然后求所有位置的最小值。 初始全0,枚举max之后,因为是加区间,min一定在两端(最左或最右)。所以不需要枚举max,我们枚举min就好(因为加区间和初始全0,这个题的特殊性)。min只能在两端。 令 x 为最佳答案中 阅读全文
摘要:
自己写的两个都T了。。没找出问题 思路就是对于i,右面i位中1的pos和为sum1,个数为cnt,那么维护剩余位中最近的cnt个0的pos和为sum0,答案就是sum1-sum0。 jly:被 \(2^i\) 整除即最后 \(i\) 位必须是0。一定是把最右边的1往左移,维护一个区间[l,r)它变成 阅读全文
摘要:
题解 阅读全文
摘要:
题解 #include <cstdio> #include <vector> #include <queue> #include <cstring> #include <algorithm> #include <iostream> #include <stack> #include <bitset> 阅读全文