莫比乌斯反演
Hillan_
An OIer From ZJ
展开
-
BZOJ3994: [SDOI2015]约数个数和
很难想到。。 http://blog.codebursts.com/bzoj3994/然后我是暴力求f的。。。 总体时间还是一样的#include<cstdio>#include<iostream>using namespace std;#define ll long longconst int maxn=50001;ll mu[maxn],pre[maxn];bool che原创 2016-03-01 18:48:26 · 464 阅读 · 0 评论 -
BZOJ2671: Calc
一开始把式子推到欧拉函数上去 半天之后才发现自己搞错了。。。重新推了一下发现就是莫比乌斯反演暴力可过。。。 主要就是把式子变形一下就好了#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longll n;const in原创 2016-04-03 18:32:57 · 486 阅读 · 0 评论 -
BZOJ2154: Crash的数字表格
讲道理这一题是可以做到O(n)预处理O(sqrt(n))询问的 然而我这么打了还是跑起来很慢。。。 最后的式子是 sigma(G=1,n) (Sigma(i=1,n/G) i ) * (Sigma(i=1,n/G) j ) * (Sigma(d|G)d * mu(G/d) * G * G / d / d) 然后我们把 (Sigma(d|G)d * mu(G/d) * G * G / d /原创 2016-03-10 13:38:59 · 326 阅读 · 0 评论 -
BZOJ3739: DZY loves math VIII
莫比乌斯反演 可以推出来 不会Markdown。。。。http://www.cnblogs.com/clrs97/p/5063707.html#include<cstdio>#include<iostream>#define ll long longchar c;inline void read(ll&a){ a=0;do c=getchar();while(c<'0'||c>'原创 2016-03-17 20:22:11 · 615 阅读 · 0 评论 -
BZOJ3309: DZY Loves Math
推G(x)的时候好神啊!!!题解:http://blog.csdn.net/popoqqq/article/details/42122413#include<cstdio>#include<iostream>using namespace std;#define ll long longchar c;inline void read(int&a){ a=0;do c=getcha原创 2016-03-17 11:49:30 · 471 阅读 · 0 评论 -
莫比乌斯反演
首先 莫比乌斯函数有个性质∑d|nμ(d)={1 (n=1)0 (n>1)证明: ①n=1时,不做多余说明。。。 ②n>1,根据唯一分解定理,可以分解n=∏ki=1paii 对于那些含平方因子也就是存在ai不为1的数,它的函数值为0,对答案没有任何贡献。 所以我们来看看那些是互异素数乘积的数,每一个成为它约数的数是什么样的情况。 (1)若d中有0个质因子(d=1原创 2015-12-23 19:56:58 · 512 阅读 · 0 评论 -
BZOJ1101: [POI2007]Zap 莫比乌斯反演
很裸的吧 转换一下就好了然后统计相同a/d,b/d 的值#include #include #include #include #include #include #define LL long longusing namespace std;char c;inline void read(int&a){ a=0;do c=getchar();whil原创 2015-12-23 21:12:06 · 612 阅读 · 0 评论 -
BZOJ2301: [HAOI2011]Problem b 莫比乌斯反演
同上一题 然后就是拆操作了 注意一下abcd除以k后区间的是闭还是开的#include #include #include #include #include #include #define LL long longusing namespace std;char c;inline void read(int&a){ a=0;do c=g原创 2015-12-23 21:13:46 · 515 阅读 · 0 评论 -
BZOJ2820: YY的GCD
很好的一道莫比乌斯反演 看了题解才把式子推出来 去看ioi爷的博客吧 http://www.cnblogs.com/iwtwiioi/p/4132095.html#include<cstdio>#include<cstring>#include<iostream>using namespace std;constint maxn=10000001;int mu[maxn],G[ma原创 2016-02-15 17:20:53 · 385 阅读 · 0 评论 -
BZOJ4407: 于神之怒加强版
莫比乌斯反演 发现搞出来的式子和昨天的差不多#include<cstdio>#include<iostream>#include<cstring>using namespace std;const int mod=1000000007;const int maxn=5000001;bool check[maxn];int sq[maxn],prime[maxn],G[ma原创 2016-02-16 09:33:17 · 704 阅读 · 0 评论 -
BZOJ2190: [SDOI2008]仪仗队
有两种做法一个是欧拉函数的前缀和另一个是莫比乌斯反演 貌似数据水能让莫比乌斯反演过去 我用的是莫比乌斯反演#include<cstdio>#include<iostream>#include<cstring>using namespace std;const int maxn=40001;int mu[maxn],pre[maxn],prime[maxn];bool check[ma原创 2016-02-17 09:38:44 · 381 阅读 · 0 评论 -
BZOJ3561: DZY Loves Math VI
昨天推了个式子发现根本不能玩。。。 后来看了别人的blog发现就是那个式子 是可以做到n^(3/2)的。。。太傻了#include<cstdio>#include<iostream>#include<cstring>#include<cstdlib>using namespace std;#define ll long longconst ll mod=1000000007;c原创 2016-03-03 13:37:34 · 502 阅读 · 0 评论 -
BZOJ2693: jzptab
沃日 昨天过了那个单次询问的。。。具体内幕我还是不说了 说多了都是泪 我居然是Rank1?#include<cstdio>#include<iostream>#include<cstring>using namespace std;#define ll long longconst int maxn=10000011;const int Mod=100000009;l原创 2016-03-11 17:32:40 · 467 阅读 · 0 评论