08 2019 档案
摘要:主席树维护最小值 如果一个数被插入队列,相当于这个数无法被选 inf 如果一个数加1e7;相当于这个数又可以被选 实际维护+1e7的操作比较麻烦 直接用将+1e7的数字压入set中二分找>=k的最小的数在于查找的答案去min
阅读全文
摘要:思路:处理每一位右边第一组互质的数的右边数的位置,O(1)处理查询; 我们先处理对于一个数右边第一个与它互质的数 从n->1开始 对于每一个数 对其进行素因数分解,记录每一个素数被那些数所包含 同时二进制标记处理其本身与那些数不互质 最后对i-n取反 找第一个1出现的位置,就是右边与它互质的第一个数
阅读全文
摘要:按降序排序 所以第2个之后的人每次都有2中决策; 1.和1跑过去 2.和他前面一个跑过去 俩这种取最小值即可
阅读全文
摘要:阶乘的逆元: 记 f[i] = i! mod p, g[i] = (i!)−1 mod p 容易发现 g[i] = g[i]+1∗(i +1) i−1 = f[i]−1∗g[i] 只需要算出 f[n],然后求出 f[n] 的逆元 g[n],然后递推即可。
阅读全文
摘要:b[n]表示1到n-1与n的gcd的和,所以dp[n]=dp[n-1]+dp[n]; a[i]表示与gcd(n, x)= i的x的个数; 所以b[n]=sum(a[i]*i) , 所以我们只需求a[i]即可; 根据gcd(n, x)=i >gcd(n/i, x/i) = 1, 因此仅仅要求出欧拉函数
阅读全文
摘要:连接:https://www.cnblogs.com/outerform/p/5921945.html 若n+1不是 质数的完全平方,则可将质因数分解成p1^a1*p2^a2*……pn^an,对于每个pi^ai,显然<n,且两两互质,所以p1^a1*p2^a2*……pn^an|L(n),所以n+1|
阅读全文
摘要:前置技能二进制枚举子集 for(int j=i;j;j=(j-1)&i) 从集合本身开始 每次-1,&i保证最后的结果一定是i的子集(0的位置不会变成1) 及每次都是从左到右消去一个1 思路:二进制枚举这n个人的子集,判断哪几个状态是能够在一辆车上的,然后对于所有状态判断他的哪两个互补的子集能使得这
阅读全文
摘要:这里是链接(^_−)☆ dp[i][j]表示第i行状态为j时的方案数 在位置(i, j) 如果我们选择横着贴砖,那么将(i, j), (i, j+1)都填写成1,如果竖着贴砖,我们将(i,j)填写成0,将(i+1, j)填写成1. 及0是对下一行的状态有影响,1为没有 枚举每一种状态 判断合法性 剪
阅读全文
摘要:这里是连接o(´^`)o 线性基性质: 1.原序列里面的任意一个数都可以由线性基里面的一些数异或得到。2.线性基里面的任意一些数异或起来都不能得到0 03.线性基里面的数的个数唯一,并且在保持性质一的前提下,数的个数是最少的
阅读全文
摘要:题解+扫描线讲解:https://blog.csdn.net/u013480600/article/details/22548393
阅读全文
摘要:好像是入门题的说 跑生成的串中不带给定字符串的个数ans 26^m-ans就是答案 dp[i][j]表示字符第i位在ac自动机上第j的节点的合法情况数 如果转移到的下一个节点是字符的结尾,就是非法的 转移dp[i][j]+=dp[i-1][j]; ps 节点编号从1开始
阅读全文
摘要:没一个x降1个y 所以对于高度H 不在上升区最多走在x方向走H a[]存上升区的前缀和 b[]存非上升区的前缀和 对于每个b[i]+h二分查找对应的点; a[pos-1]-a[i-1]就是其经过的上升区的长度 维护最大值 ans+H 即为答案
阅读全文
浙公网安备 33010602011771号