(每日一题)CF1139D Steps to One 2021年天梯赛 L3-3 可怜的简单题(期望,莫比乌斯反演,杜教筛)
整理的算法模板合集: ACM模板
点我看算法全家桶系列!!!
实际上是一个全新的精炼模板整合计划
一周连考三门,人都没了
Weblink
2021年天梯赛 L3-3 可怜的简单题
CF1139D
Problem
Solution
数据较大,要用快速乘不然会爆 long long
Code
#include <bits/stdc++.h>
using namespace std;
#define ll long long
const int N = 21544400 + 7;#define minus(x, y) (1ll * x - y < 0 ? 1ll * x - y + mod : 1ll * x - y)
#define plus(x, y) (1ll * x + y >= mod ? 1ll * x + y - mod : 1ll * x + y) ll mod;
int mu[N];
ll smu[N];
bool vis[N];
unordered_map <ll, ll> sum_mu;
int primes[N], cnt;
ll n, m; ll mul(ll a, ll b) {if (mod <= 1000000000) return a * b % mod;else if (mod <= 1000000000000ll) return (((a * (b >> 20) % mod) << 20) + (a * (b & ((1 << 20) - 1)))) % mod;else {ll d = (ll)floor(a * (long double)b / mod + 0.5);ll res = (a * b - d * mod) % mod;if (res < 0) res += mod;return res;}
}ll qpow(ll a, ll b)
{if(mod == 1) return 0;ll res = 1;a = a % mod;while(b) {if(b & 1) res = mul(res, a);a = mul(a, a);b >>= 1;}return res;
}ll inv(ll x)
{return qpow(x, mod - 2);
}void init(int n)
{mu[1] = 1, vis[1] = 1;for(int i = 2; i <= n; ++ i) {if(vis[i] == 0) {primes[ ++ cnt] = i;mu[i] = -1;}for(int j = 1; j <= cnt && i * primes[j] <= n; ++ j) {vis[i * primes[j]] = 1;if(i % primes[j] == 0) {mu[i * primes[j]] = 0;break;} mu[i * primes[j]] -= mu[i];}} for(int i = 1; i <= n; ++ i) smu[i] = plus(smu[i - 1], mu[i]);return ;
}inline ll g_sum(ll x)
{return x;
}inline ll get_sum_mu(ll x)
{if(x <= N - 7) return smu[x];if(sum_mu.find(x) != sum_mu.end()) return sum_mu[x]; ll ans = 1;for(ll l = 2, r; l <= x; l = r + 1) {r = x / (x / l); ll tmp = mul((r - l + 1), get_sum_mu(x / l));ans = minus(ans, tmp);}ans = (ans % mod + mod) % mod;sum_mu[x] = ans / g_sum(1ll);return ans / g_sum(1ll);
}void solve(ll m)
{ll ans = 1;for(ll l = 1, r; l <= m; l = r + 1) {r = m / (m / l); ll tmp = mul((get_sum_mu(r) - get_sum_mu(l - 1)), mul(m / l, inv(m - m / l)));ans = minus(ans, tmp);} ans = (ans + mod) % mod;printf("%lld\n", ans);return ;
}signed main()
{ scanf("%lld%lld", &m, &mod);if(m == 1) return printf("1\n"), 0;init(N - 7);solve(m);return 0;
}
(每日一题)CF1139D Steps to One 2021年天梯赛 L3-3 可怜的简单题(期望,莫比乌斯反演,杜教筛)相关推荐
- (每日一题)P3768 简单的数学题(确信)(莫反 + 欧拉反演 + 杜教筛 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 每日一题(莫反 / 多项式 / 母函数 / 群论) 2021.4.20 莫反 和上午的那道题比较类似的 ...
- 2021年国赛高教杯数学建模A题FAST主动反射面的形状调节解题全过程文档及程序
2021年国赛高教杯数学建模 A题 FAST主动反射面的形状调节 原题再现 中国天眼--500 米口径球面射电望远镜(Five-hundred-meter Aperture Spherical r ...
- 2021年国赛高教杯数学建模B题乙醇偶合制备C4烯烃解题全过程文档及程序
2021年国赛高教杯数学建模 B题 乙醇偶合制备C4烯烃 原题再现 C4 烯烃广泛应用于化工产品及医药的生产,乙醇是生产制备 C4 烯烃的原料.在制备过程中,催化剂组合(即:Co 负载量.Co/S ...
- 2021年国赛高教杯数学建模D题连铸切割的在线优化解题全过程文档及程序
2021年国赛高教杯数学建模 D题 连铸切割的在线优化 原题再现 连铸是将钢水变成钢坯的生产过程,具体流程如下(图 1): 钢水连续地从中间包浇入结晶器,并按一定的速度从结晶器向下拉出,进入二 ...
- 2021/4/24团队设计天梯赛L3题目集及部分题解
2021/4/24团队设计天梯赛L3题目集及部分题解: 以下题解都是通过PTA测试的,大致保证正确性: 查看题目戳此::PTA题目集 L3题目集 L3-01 森森旅游 (30 分) L3-02 还原文 ...
- Luogu P6055 [RC-02] GCD(莫比乌斯反演,杜教筛)(这题乐死我了,真就图一乐呗)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://www.luogu.com.cn/problem/P6055 Prob ...
- A. [2021.1.29多校省选模拟11]最大公约数(杜教筛/数论)
A. [2021.1.29多校省选模拟11]最大公约数 这是一个杜教筛的经典题目,最后我们只需要筛一下1∗xμ(x)1*x\mu(x)1∗xμ(x)这个函数的前缀和即可,然后看到有111这个函数,我们 ...
- 计算机天梯赛pat练习集L1-(31~88题)
文章目录: 31.到底是不是太胖了 32.Left-pad 33.出生年 34.点赞 35.情人节 36.A乘以B 37.A除以B 38.新世界 39.古风排版 40.最佳情侣身高差 41.寻找250 ...
- 2021 CCCC天梯赛补题
前言不想看请直接跳过---- 前言+检讨:天梯赛我拉垮了,我拖了队伍后腿,我有罪. 分析原因,首先是前一个星期训练量不够,没有跟上队友训练的进度,一些基础的STL的用法使用的也不熟练. 第二,没有把S ...
最新文章
- 数据采集提升性能篇-使用Mybatis的批量操作api导入数据
- 找到MVC框架中前端URL与后端同步的解决方案
- 赋值给集合_当面试官问集合遍历的删除方法时,要警惕这里有个异常陷阱
- hdu 1312深搜入门题
- idea设置提示重复代码下去掉波浪线
- [FW]修复ubutnu12.04+win7的grub2引导
- [转] 基于 Apache Mahout 构建社会化推荐引擎
- 中配置kylin_Kylin集群模式部署(使用同一HBase存储)
- torch运行错误libcudnn Unsupported HDF5 version: 1.10.2错误
- insmod: can‘t insert ‘xx.ko‘: File exists 问题解决
- 保姆级PS教程:建筑表现后期中的照明处理
- 思科警告:旗下某些产品可能存在无法修补的WannaCrypt漏洞
- python 控制手机摄像头_用Python获取摄像头并实时控制人脸 !
- 2设置使用 Yocto 项目
- 51nod 2075 图书管理员
- JavaScript循环对象拿到键和值
- windows下如何配置AWS进行深度学习
- 山东办理高新技术企业可以享受的税收优惠
- 现在假定初始在第一站的时候公车上有k个人,以后每经过一站车上的人先下去一半ki/2(ki除2的整数部分),然后再上ki人,现在已知公车的限乘人数L,假定公车如果不能再上人就(即ki-ki/2+ki
- 去哪网实习总结:已完毕,但是网页上有错误(JavaWeb)