数论

题源

神犇题解:

 

吊打上面那位的神犇的题解

 

题面:

先看题:  莫比乌斯反演 ?!

一般的人看到 莫比乌斯反演 果断弃疗。

但是,细心一点,你会看到:

n*m ... n*m ...

式子和n*m有毛子关系?不管,打个表。

还真是 n*m !

AC代码:

1 #include<stdio.h>
2 #define ll long long
3 using namespace std;
4 ll n,m,p;
5 signed main(){
6     scanf("%lld%lld%lld",&n,&m,&p);
7     printf("%lld\n",n*m%p);
8 }

但为毛是 n*m 呢?

显然,根据打表结论,易得......                                                                                                                       ——   正解

现给出证明与以后见到这种题的灵感来源:

 

首先,看 [ gcd ( i , j ) = 1 ] ,这是什么意思捏

不就是防止 后面比值的 ( i , j ) 与前面同样比值的 ( i , j )重复吗?

辛苦保证比值唯一。

有什么 ( i , j ) 对的比值必须唯一?

设 i 是您的智商 , j 是我的智商 , i/j 恒为无穷大

我们可以想到斜率。

再看两个向下取整 , 就是 横坐标步长为 i , 纵坐标步长为j的方案啊。

这它丫的就是在 (1,1) 看 (1~n)(1~m)的整点数啊。

 自己看:

 

据说有人将这种方法归入物理思想的分类

 

怕不是体育思想

posted @ 2019-07-26 15:05  monyhzc  阅读(219)  评论(0编辑  收藏  举报