大数"/>
猫老大数
猫老大很喜欢研究数字,特别是喜欢质数。一天,猫老大发现有一些数字可以表示成两个不同质数相乘的形式。比如,10=2×5。2,5都是质数,所以 10 是一个“猫老大数 ”。所以猫老大决定考考彩虹,他告诉彩虹一个数 n ,判断 n 是不是“猫老大数”?
输入格式
一行,一个数 n (1<=n<=2^31-1).(int的最大值是2^31-1)
输出格式
输出一行,如果 n 是一个“猫老大数”则输出 “It's a MaoLaoDa number.”
否则输出“It's not a MaoLaoDa number.”
输入/输出例子1
输入:
10
输出:
It's a MaoLaoDa number.
直接上代码:
#include<bits/stdc++.h>
using namespace std;
long long ccc(long long a)
{for(long long i=2;i<=sqrt(a);i++){if(a%i==0)return 0;}return 1;
}
long long n,sum;
int main()
{scanf("%lld",&n);for(long long i=2;i<=sqrt(n);i++){if(n%i==0&&ccc(i)==1&&ccc(n/i)==1){if(i*i!=n)sum++;}}if(sum==1)cout<<"It's a MaoLaoDa number.";else cout<<"It's not a MaoLaoDa number.";return 0;
}
更多推荐
猫老大数
发布评论