AcWing 866. 试除法判定质数

简介: AcWing 866. 试除法判定质数
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
bool is_prim(int n){
  if(n<2) return false;
  for(int i=2;i<=n/i;i++)
    if(n%i==0) return false;
  return true;
}
int main()
{
  int n,m;
  scanf("%d",&n);
  for(int i=1;i<=n;i++){
    scanf("%d",&m);
    if(is_prim(m)) printf("Yes\n");
    else printf("No\n");
  }
    return 0;
}
/*
i<n         O(n)  超时
i*i<=n      O(sqrt(n))  当n趋近于int时i*i有的可能会因溢出变成负数
i<=sqrt(n)  O(sqrt(n))  每次循环会进行sqrt()的运算 用时过长
i<=n/i      O(sqrt(n))  完美
*/
相关文章
|
1月前
|
机器学习/深度学习
一个偶数总能表示为两个素数之和
【10月更文挑战第10天】一个偶数总能表示为两个素数之和。
16 2
|
6月前
|
JavaScript
【leetcode】204. 计数质数 暴力 & 埃拉托斯特尼法
【leetcode】204. 计数质数 暴力 & 埃拉托斯特尼法
38 0
|
算法 C语言
【C语言】判断一个数是否为素数(素数求解的N种境界)(下)
【C语言】判断一个数是否为素数(素数求解的N种境界)(下)
118 0
|
6月前
|
机器学习/深度学习
一个偶数总能表示为两个素数之和。
一个偶数总能表示为两个素数之和
37 0
|
6月前
|
人工智能
试除法判定质数
试除法判定质数
39 0
|
6月前
试除法判定质数:深入探索与代码分析
试除法判定质数:深入探索与代码分析
90 0
|
6月前
|
人工智能 Java C++
试除法求约数
试除法求约数
48 0
|
6月前
leetcode-372:超级次方(快速幂的实现以及取余的规则和推导)
leetcode-372:超级次方(快速幂的实现以及取余的规则和推导)
45 0
【每周一坑】​正整数分解质因数 +【解答】计算100以内质数之和
关于分解质因数:每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,把一个合数用质因数相乘的形式表示出来,叫做分解质因数。分解质因数只针对合数。