国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

hdu 2138 How many prime numbers (Miller Rabbin大質數判定)

2019-11-08 18:42:22
字體:
來源:轉載
供稿:網友

How many PRime numbers

Time Limit: 3000/1000 MS (java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 18144    Accepted Submission(s): 6180Problem Description  Give you a lot of positive integers, just to find out how many prime numbers there are. Input  There are a lot of cases. In each case, there is an integer N representing the number of integers to find. Each integer won’t exceed 32-bit signed integer, and each of them won’t be less than 2. Output  For each case, print the number of prime numbers you have found out. Sample Input
32 3 4 Sample Output
2 Authorwangye SourceHDU 2007-11 Programming Contest_WarmUp Recommend威士忌   |   We have carefully selected several similar problems for you:  2136 1431 2132 2139 2012 

題解:Miller Rabbin大質數判定

控制一下嘗試的次數,此題容易TLE

#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#define LL long longusing namespace std;int n;LL quickpow(LL num,LL x,LL p){	LL base=num%p; LL ans=1;	while (x) {		if (x&1) ans=ans*base%p;		x>>=1;		base=base*base%p;	}	return ans; }bool miller_rabbin(LL n){	if (n==2) return true;	if (n<2||!(n&1)) return false;	LL t=0;	LL a,x,y,u=n-1;	while (!(u&1)) t++,u>>=1;	for (int i=0;i<=100;i++) {		a=rand()*rand()%(n-1)+1;		x=quickpow(a,u,n);		for (int j=0;j<t;j++) {			y=x*x%n;			if (y==1&&x!=1&&x!=n-1) return false;			x=y;		}		if (x!=1) return false;	} 	return true;}int main(){	freopen("a.in","r",stdin);	freopen("my.out","w",stdout);	while (scanf("%d",&n)!=EOF){	    int cnt=0;		for (int i=1;i<=n;i++) {			int x; scanf("%d",&x);			cnt+=miller_rabbin((LL)x);		} 		printf("%d/n",cnt);    }}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 周宁县| 当涂县| 安义县| 息烽县| 阿鲁科尔沁旗| 巴彦县| 景东| 徐闻县| 鹤山市| 深州市| 襄垣县| 扬中市| 本溪| 富川| 马公市| 乌苏市| 博湖县| 永德县| 泽库县| 瓮安县| 洛阳市| 南丰县| 德惠市| 县级市| 工布江达县| 双牌县| 武强县| 余姚市| 石屏县| 苏尼特右旗| 修水县| 浪卡子县| 固镇县| 商水县| 泌阳县| 大名县| 普宁市| 宝应县| 余庆县| 德惠市| 肥乡县|