您的位置:首页 > 其它

51nod 1240 莫比乌斯函数

2017-08-14 16:02 387 查看
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1240

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
LL Miu( LL n ) {  /// 莫比乌斯函数板子。
LL m = 1;
for(LL i = 2; i * i <= n; ++i) {
if(n % i == 0) {
m *= -1;
LL k = 0;
do {
k++;
if(k > 1) { m = 0; break; }
n /= i;
} while ( n % i == 0);
}
}
if(n > 1) m *= -1;
return m;
}
int main() {
LL n;
while(cin >> n) {
cout << Miu(n) << endl;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: