51nod 1240 莫比乌斯函数

来源:互联网 发布:linux卸载snmp服务 编辑:程序博客网 时间:2024/06/03 09:56

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;    }}