ZSYZZS(素数)
来源:互联网 发布:淘宝网红哪家店质量好 编辑:程序博客网 时间:2024/06/05 04:22
https://www.contesthunter.org/Contest/[orzzsy%E6%9D%AF]%E6%B0%B4%E9%A2%98%E7%AB%9E%E9%80%9F%E8%B5%9B/Problem/Show/ZSYZZS
题目给的数据大的吓人呀 ~
描述
给你两个整数a,b,请任意输出一个[a,b]内的质数
输入格式
两个用空格隔开的整数a和b(a<=b)
输出格式
一个整数,表示一个[a,b]内的质数,如果[a,b]内没有质数,请输出-1
样例输入
1 2
样例输出
2
数据范围与约定
- 对于100%的数据:,为了简化题目,同时将保证|a-b|<=10000
看到这个数据,还以为如果b=2^50的时候会不会超时~~
错了几次,完了以后,ac时才发现,数据弱到爆~~
太假了,但是还是学到用概率法去求很大的素数。代码是看别人照着写的。到时候熟悉熟悉就行了。
简单的代码:
#include <iostream>#include <cmath>using namespace std;bool isprime(long long n){ long long s=(long long)sqrt(n); if(n==1) return false; for(long long i=2;i<=s;i++) if(n%i==0)return false; return true; }int main(){ long long a,b; while(cin>>a>>b) { bool f(0); for(long long i=a;i<=b;i++) { if(isprime(i)){ f=1; cout<<i<<endl; break; } } if(!f)cout<<-1<<endl; }return 0;}
然后是,新学的算~~
#include<stdio.h>#include<stdlib.h>#include<time.h>#define maxTest 100#include <iostream>using namespace std;long long int Random(long long int n){ return (long long int)((double)rand()/RAND_MAX*n+0.5);}long long int Modular_Exp(long long int a, long long int b, long long int n) // a^b mod n{ long long int ans; if(b == 0) return 1; if(b == 1) return a % n; ans = Modular_Exp(a, b/2, n); ans = ans * ans % n; if(b % 2) ans = ans * a % n; return ans;}bool Miller_Rabbin(long long int n) //n是prime { for(int i=1; i<=maxTest; ++i) { long long int a = Random(n-2)+1; if(Modular_Exp(a, n-1, n) != 1) return false; } return true;}int main(){ long long int a; long long int b;while(cin>>a>>b) { bool f(0); srand(time(NULL)); for(long long int i=a;i<=b;i++) //特别注意这里 if(i!=1&&Miller_Rabbin(i)){ f=1; cout<<i<<endl; break;} if(!f) cout<<"-1"<<endl;} return 0;}
这个算法要是忘记了的话可以看看网络收藏夹~~
- ZSYZZS(素数)
- 求素数(筛法求素数)
- 素数之和(筛法求素数)
- 素数nyoj--(素数距离)
- 素数nyoj--(素数距离)
- 1013数素数(素数)
- 验证素数(素数筛选法验证素数)
- 又见素数(素数筛法)
- 素数定理(素数的分布)
- 素数筛法求素数(线性时间)
- hdu1431 素数回文(素数筛/埃拉托斯特尼筛法)
- 水题(素数表)NYOJ素数距离
- OJ 1468 求素数(素数筛)
- 素数的家族(求素数)
- 素数的家族(可逆素数)
- 素数的家族(孪生素数)
- 素数的家族(回文素数)
- 九度OJ 1163:素数 (素数)
- OMG点菜系统
- JAVA泛型总结
- sqlServer 端口号设置
- MSMQ In WCF
- manacher求最大回文长度
- ZSYZZS(素数)
- Oracle性能监控的SQL语句大集合
- SPI总线简介
- APNS编程----iOS真机测试消息推送
- C操作SQLite数据库
- spring security源码下载及编译运行
- hdu 4629 Burning 暑期多校第三场 1006
- linux 删除目录,非空文件夹
- hdu 1176 免费馅饼