您的位置:首页 > 其它

bzoj2005: [Noi2010]能量采集 莫比乌斯反演

2015-03-20 11:18 375 查看
直接求出函数值加个系数就可以了。。。
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cmath>
using namespace std;
long long f[110000];
int n,m;
long long ans;
int main()
{
scanf("%d%d",&n,&m);
if(n>m) swap(n,m);
for(int i=n;i;i--)
{
f[i]=(long long)(n/i)*(m/i);
for(int j=2;j*i<=n;j++)
{
f[i]-=f[j*i];
}
ans+=f[i]*(2*i-1);
}
printf("%lld\n",ans);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: