求问为何这样做能通过题目样例但case通过率为0

#include <bits/stdc++.h>
using namespace std;
bool isSu(int x){
    bool flag=true;
    for(int i=2;i<=sqrt(x);i++){
        if(x%i==0){
            flag=false;
            break;
        }
    }
    return flag;
}
int main()
{
    int T;
    cin>>T;
    while(T--){
        int n,cnt=0;
        cin>>n;
        for(int i=1;i<=sqrt(n);i++){
            if(n%i==0) cnt++;
        }
        if(isSu(n) && n!=1)
            cout<<cnt+1<<endl;
        else cout<<cnt<<endl;
    }
}

麻烦各位大佬了😫
全部评论
一直找n能整除的最小数,模拟即可 代码如下: #include<bits/stdc++.h> using namespace std; int main() {     long long n;     int T;     cin>>T;     while(T--){         cin>>n;         int cnt=0,i=2;         while(n&&i<=n){             if(n%i==0)n/=i,cnt++;             i++;         }         cout<<cnt+1<<endl;     } }
1
送花
回复
分享
发布于 2020-08-15 19:03
样例!=测试用例
1
送花
回复
分享
发布于 2020-08-17 21:23
秋招专场
校招火热招聘中
官网直投

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务