题意:给定一个数,判断是不是素数。

析:由于数太多,并且太大了,所以以前的方法都不适合,要用米勒拉宾算法。

代码如下:

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <vector>
#include <cstring>
#include <map>
#include <cctype> using namespace std;
typedef long long LL;
const int maxn = 1000 + 5; LL qpow(int a, int b, int r){
LL ans = 1;
LL k = a % r;
while(b){
if(b & 1) ans = (ans * k) % r;
k = (k * k) % r;
b >>= 1;
}
return ans;
} bool miller_rabbin(int n, int a){
int r = 0,s = n-1;
if(!(n % a)) return false;
while(!(s & 1)){ s >>= 1; ++r; } LL k = qpow(a, s, n);
if(1 == k) return true;
for(int j = 0; j < r; ++j, k = k * k % n)
if(k == n-1) return true;
return false;
} bool is_prime(int n){
int tab[] = {2, 3, 5, 7};
for(int i = 0; i < 4; ++i){
if(n == tab[i]) return true;
if(!miller_rabbin(n, tab[i])) return false;
}
return true;
} int main(){
// freopen("in.txt", "r", stdin);
int n, x;
while(~scanf("%d", &n)){
int cnt = 0;
for(int i = 0; i < n; ++i){
scanf("%d", &x);
if(is_prime(x)) ++cnt;
}
printf("%d\n", cnt);
}
}

最新文章

  1. Python脚本调用Django内容
  2. Java:文件类File的详解
  3. DBMS_RLS包实现数据库表中的行级安全控制
  4. 第二、UIScrollView的使用大全
  5. nginx(2)
  6. ehcache memcache redis 区别
  7. Angular--ui-router的使用
  8. Alpha冲刺Day8
  9. JS33个概念
  10. lambda expressions
  11. [No0000DC]C# FileHelper 本地文件、文件夹操作类封装FileHelper
  12. CAS锁相关讲解
  13. Centos 7 RabbitMQ + Haproxy 集群高可用部署
  14. selenium +chrome headless Manual 模式渲染网页
  15. 微软、谷歌、亚马逊、Facebook等硅谷大厂91个开源软件盘点(附下载地址)
  16. JavaScript权威指南--事件处理
  17. [转]C# 系统应用之鼠标模拟技术及自动操作鼠标
  18. 【洛谷】【洛谷月赛】4月月赛Round 1/2
  19. 移动端优化 &amp;&amp; 清除移动端网站点击a标签时闪现的边框或遮罩层(CSS) &amp;&amp; 移动端点击 &amp;&amp; 文字不可选择
  20. PHP调用百度api生成短网址&amp;根据短网址恢复长网址

热门文章

  1. Java对字符串使用MD5进行加密(亲测有效)
  2. oracle惯用缩写的含义
  3. Vote Disk 和 OCR概述
  4. maven GroupId 和ArtifactId通常填什么
  5. pyspark dataframe 格式数据输入 做逻辑回归
  6. Fb 第三方接口
  7. frm和ibd恢复sql文件的操作
  8. org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]
  9. virtualbox Linux与Windows共享文件
  10. PAT L2-008 最长对称子串(模拟字符串)