#include <stdio.h>
#include<math.h>
int main() {
long long n,flag=1;
scanf("%lld",&n);
if(n==1){
flag=0;
}
else if(n==2) flag=1;
else{
for(long long i=2;i<=(int)sqrt(n);i++){
if(n%i==0) {
flag=0; break;
}
}
}
if(!flag) printf("No");
else printf("Yes");
return 0;
}
需要开long long,其次就直接缩小范围对数据开根号即可求解(注意要取到根号值)。

京公网安备 11010502036488号