题解 | 小苯的数字权值

小苯的数字权值

https://www.nowcoder.com/practice/aeacca655eec45999a6dc4d998dfd4a5

#include <iostream>
using namespace std;

#include<algorithm>
#include<cmath>
int main(){
int t;
cin>>t;
while(t--){
int a;
cin>>a;
long long c=0;
long long d=0;
int b=a;
int e=a;
for(int i=2;i*i<=b;i++)
{
while(a%i==0){
c++;
a/=i;




}
if(e%i==0){
    d++;
}
}

if(a>1){
    c++;
}

int f=0;
int w=sqrt(e);
if(w*w==e){
    f=2*d+1;
}
else{
    f=2*d+2;
}

if(2*c>=f)
cout<<c*2<<endl;
else{
    cout<<f<<endl;
}

}


    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务