题目:

  给定正整数n,m。求
 

题解:

  水题有益身心健康。(博客园的辣鸡数学公式)

  其实到这我想强上伯努利数,然后发现$n^2$的伯努利数,emmmmmm

  发现这个式子可以算时间复杂度,emmmmm。积了个分发现时间复杂度很优秀啊(大概也就是$nlog$级别的)。

  所以直接算就好了。

  P.S.想卡卡常刷一个题榜rank1,emmmm发现自己没这个天赋。

代码:

 #define Troy

 #include "bits/stdc++.h"

 using namespace std;

 const int mod=,N=5e5+;

 inline int powmod(int a,int b){
int ret=;
while(b){
if(b&) ret=ret*1ll*a%mod;
b>>=;
a=a*1ll*a%mod;
}return ret;
} int prim[N],num,mu[N],vis[N],sum[N],ans,f[N]; inline int calc(int n,int m,int t){
register int i,j;
int ret=;
for (i=;i<=m;++i){
f[i]=f[i]*1ll*i%mod;
vis[i]=mu[i]*(f[i]*1ll*f[i]%mod);
vis[i]+=vis[i-];
vis[i]%=mod;
sum[i]=sum[i-]+f[i];
sum[i]%=mod;
}
for (i=;i<=n;i=j+){
j=min(n/(n/i),m/(m/i));
ret=(ret+(vis[j]-vis[i-])*1ll*sum[n/i]%mod*sum[m/i])%mod;
}
return ret;
} int main(){
int n,m;
scanf("%d%d",&n,&m);
if(n>m) swap(n,m);
register int i,j;
for(i=,mu[]=;i<=n;++i){
if(!vis[i]) {
mu[i]=-,prim[++num]=i;
}for(j=;prim[j]*i<=n;++j){
vis[i*prim[j]]=true;
if(i%prim[j]==) {
mu[i*prim[j]]=;break;
}mu[i*prim[j]]=-mu[i];
}
}
for(i=;i<=m;++i) f[i]=;
for(i=;i<=n;++i){
ans=(ans+powmod(i,i)*1ll*calc(n/i,m/i,i))%mod;
}
printf("%d\n",ans);
}

【BZOJ 3561】 DZY Loves Math VI的更多相关文章

  1. 【bzoj 3309 】 DZY Loves Math

    Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0.给定正整数a,b,求 ...

  2. 【BZOJ 3309】DZY Loves Math

    http://www.lydsy.com/JudgeOnline/problem.php?id=3309 \[\sum_{T=1}^{min(a,b)}\sum_{d|T}f(d)\mu(\frac ...

  3. 【BZOJ3561】DZY Loves Math VI (数论)

    [BZOJ3561]DZY Loves Math VI (数论) 题面 BZOJ 题解 \[\begin{aligned} ans&=\sum_{i=1}^n\sum_{j=1}^m\sum_ ...

  4. 【bzoj3561】DZY Loves Math VI 莫比乌斯反演

    题目描述 给定正整数n,m.求   输入 一行两个整数n,m. 输出 一个整数,为答案模1000000007后的值. 样例输入 5 4 样例输出 424 题解 莫比乌斯反演 (为了方便,以下公式默认$ ...

  5. 【BZOJ 3569】DZY Loves Chinese II 随机化+线性基

    用到一个结论——[先建树,再给每个非树边一个权值,每个树边的权值为覆盖他的非树边的权值的异或和,然后如果给出的边存在一个非空子集异或和为0则不连通,否则连通](必须保证每条边的出现和消失只能由自己产生 ...

  6. 【BZOJ 3569】DZY Loves Chinese II

    题面 Description 神校XJ之学霸兮,Dzy皇考曰JC. 摄提贞于孟陬兮,惟庚寅Dzy以降. 纷Dzy既有此内美兮,又重之以修能. 遂降临于OI界,欲以神力而凌♂辱众生. 今Dzy有一魞歄图 ...

  7. 【BZOJ 3569】 DZY Loves Chinese II

    题目连接: 传送门 题解: 先%一发大佬的题解. 考虑一个图,删除一些边以后不连通的条件为,某个联通块与外界所有连边都被删掉,而不只是生成树中一个树边与所以覆盖它的非树边(很容易举出反例). 那么考虑 ...

  8. 【BZOJ 3561】 3561: DZY Loves Math VI (莫比乌斯,均摊log)

    3561: DZY Loves Math VI Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 205  Solved: 141 Description ...

  9. BZOJ 3561 DZY Loves Math VI

    BZOJ 3561 DZY Loves Math VI 求\(\sum_{i=1}^{n}\sum_{j=1}^{m}\text{lcm}(i,j)^{\gcd(i,j)}\),钦定\(n\leq m ...

随机推荐

  1. SpringBoot yml 配置

    1. 在 spring boot 中,有两种配置文件,一种是application.properties,另一种是application.yml,两种都可以配置spring boot 项目中的一些变量 ...

  2. rsync的详细配置

    服务器配置: yum install rsync   安装rsync vi /etc/rsyncd.conf   创建主配置文件 pid file = /var/run/rsyncd.pid port ...

  3. 使用AngularJS开发中的几个问题

    1.AngularJS的模板绑定机制好像和其$http服务也有一定关系,如果用jQuery Ajax的返回值赋给$scope的作用域变量,整个绑定显示的节奏慢一个事件,神器果然麻烦啊. 2.对hidd ...

  4. 图灵程序设计丛书(SQL必知必会)笔记

    SQL必知必会 第二课:检索数据 1.分页 (1).SQL Server 栗子 : select top 2 columns from tableName (2).Oracle 栗子 :select ...

  5. facenet 进行人脸识别测试

    1.简介:facenet 是基于 TensorFlow 的人脸识别开源库,有兴趣的同学可以扒扒源代码:https://github.com/davidsandberg/facenet 2.安装和配置 ...

  6. 前端开发中的JS调试技巧

    前言:调试技巧,在任何一项技术研发中都可谓是必不可少的技能.掌握各种调试技巧,必定能在工作中起到事半功倍的效果.譬如,快速定位问题.降低故障概率.帮助分析逻辑错误等等.而在互联网前端开发越来越重要的今 ...

  7. CDN及CDN加速原理

    本想自己写这个主题的文章,但网上已经有人写了一篇非常好的文章,觉得难以望其项背.就没有必要再写,直接转载如下: 在不同地域的用户访问网站的响应速度存在差异,为了提高用户访问的响应速度.优化现有Inte ...

  8. List数组和集合相互转换

    1.List的toArray()方法用于将集合转换成数组,但实际上改方法是在Collection中定义的,所以所有的集合都具备这个功能, 其有两个方法:Object[] toArray()  和   ...

  9. nuget的问题, NuGet 程序包还原失败

    将项目中的packages.config 中引用移除. 1.使用nuget管理器,进行安装 2.下载对应dll,手动引入项目

  10. Python模块操作

    Exceptions 模块 该模块定义了以下标准异常: • Exception 是所有异常的基类. 强烈建议(但不是必须)自定义的异常异常也继承这个类. • SystemExit(Exception) ...