上一页 1 2 3 4 5 6 7 ··· 16 下一页
摘要: 思路:处理每一位右边第一组互质的数的右边数的位置,O(1)处理查询; 我们先处理对于一个数右边第一个与它互质的数 从n->1开始 对于每一个数 对其进行素因数分解,记录每一个素数被那些数所包含 同时二进制标记处理其本身与那些数不互质 最后对i-n取反 找第一个1出现的位置,就是右边与它互质的第一个数 阅读全文
posted @ 2019-08-21 11:01 Minun 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 按降序排序 所以第2个之后的人每次都有2中决策; 1.和1跑过去 2.和他前面一个跑过去 俩这种取最小值即可 阅读全文
posted @ 2019-08-19 19:59 Minun 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 阶乘的逆元: 记 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],然后递推即可。 阅读全文
posted @ 2019-08-17 08:55 Minun 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 板子 阅读全文
posted @ 2019-08-16 09:18 Minun 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 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, 因此仅仅要求出欧拉函数 阅读全文
posted @ 2019-08-13 20:59 Minun 阅读(289) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 16 下一页