#include<cstdio>
#include<cstdlib>
using namespace std;
#define N 10000
typedef unsigned long long ll; ll ModMul(ll a, ll b, ll n) { //快速积取模 a*b%n
ll ans = 0;
while(b) {
if(b & 1)
ans = (ans + a) % n;
a = (a + a) % n;
b >>= 1;
}
return ans;
}
ll ModExp(ll a, ll b, ll n) { //快速幂取模 a^b%n
ll ans = 1;
while(b) {
if(b & 1)
ans = ModMul(ans, a, n);
a = ModMul(a, a, n);
b >>= 1;
}
return ans;
}
bool miller_rabin(ll n) { //Miller-Rabin素数检测算法
ll i, j, a, x, y, t, u, s = 10;
if(n == 2)
return true;
if(n < 2 || !(n & 1))
return false;
for(t = 0, u = n - 1; !(u & 1); t++, u >>= 1); //n-1=u*2^t
for(i = 0; i < s; i++) {
a = rand() % (n - 1) + 1;
x = ModExp(a, u, n);
for(j = 0; j < t; j++) {
y = ModMul(x, x, n);
if(y == 1 && x != 1 && x != n - 1)
return false;
x = y;
}
if(x != 1)
return false;
}
return true;
} //以上都是模板,以下为核心算法
int main()
{
ll n, t;
scanf("%llu",&t);
while(t--){
scanf("%llu", &n);
//通过数学规律可以发现第一个素数最大不超过10000
for(ll i = 1; i < N; i++){
if(miller_rabin(i) && miller_rabin(n-i)){
printf("%llu %llu\n",i, n-i);
break;
}
}
}
return 0;
}

参考:https://blog.csdn.net/a1097304791/article/details/81586513

计蒜客——Goldbach的更多相关文章

  1. 计蒜客 Goldbach Miller_Rabin判别法(大素数判别法)

    题目链接:https://nanti.jisuanke.com/t/25985 题目: Description: Goldbach's conjecture is one of the oldest ...

  2. 计蒜客 作弊揭发者(string的应用)

    鉴于我市拥堵的交通状况,市政交管部门经过听证决定在道路两侧安置自动停车收费系统.当车辆驶入车位,系统会通过配有的摄像头拍摄车辆画面,通过识别车牌上的数字.字母序列识别车牌,通过连接车管所车辆信息数据库 ...

  3. 计蒜客的一道题dfs

    这是我无聊时在计蒜客发现的一道题. 题意: 蒜头君有一天闲来无事和小萌一起玩游戏,游戏的内容是这样的:他们不知道从哪里找到了N根不同长度的木棍, 看谁能猜出这些木棍一共能拼出多少个不同的不等边三角形. ...

  4. 计蒜客模拟赛5 D2T1 成绩统计

    又到了一年一度的新生入学季了,清华和北大的计算机系同学都参加了同一场开学考试(因为两校兄弟情谊深厚嘛,来一场联考还是很正常的). 不幸的是,正当老师要统计大家的成绩时,世界上的所有计算机全部瘫痪了. ...

  5. 计蒜客 等边三角形 dfs

    题目: https://www.jisuanke.com/course/2291/182238 思路: 1.dfs(int a,int b,int c,int index)//a,b,c三条边的边长, ...

  6. 计蒜客 方程的解数 dfs

    题目: https://www.jisuanke.com/course/2291/182237 思路: 来自:https://blog.csdn.net/qq_29980371/article/det ...

  7. 计蒜客 买书 dfs

    题目: https://www.jisuanke.com/course/2291/182236 思路: 递归解决,从第一本书开始,每本书都有两种选择: //index是book里面每本书价格的下标, ...

  8. 计蒜客:Entertainment Box

    Ada, Bertrand and Charles often argue over which TV shows to watch, and to avoid some of their fight ...

  9. 爬虫acm比赛成绩(多页成绩整合在一起、获取复制不了的数据)(hihocoder、计蒜客)

    https://github.com/congmingyige/web-crawler_rank-of-competition-in-JiSuanKe-and-hihocoder 1. 计蒜客(获取复 ...

随机推荐

  1. swagger list Could not resolve reference because of: Could not resolve point

    swagger list Could not resolve reference because of: Could not resolve point controller的参数要加   @Requ ...

  2. NEST 自定义分析器

    public void SetAnalysis() { if (!client.IndexExists("employee").Exists) { client.CreateInd ...

  3. if __name__ == '__main__' 该如何理解

    Python 中的 if __name__ == '__main__' 该如何理解 程序入口 对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面向对象的编程语言 Java,C# ...

  4. 必须修改getdate()格式,判断是否处于两个日期之间

    ), ) ), )<= 周次结束日期 ), ) -- 这样的格式结果为:2019-09-01 --如果不进行转换,查出来含有日期和时间,否则两个边界无法查询出来

  5. 关于ABViewer的疑问解答

    很多 CAD小伙伴都对 ABViewer 这款软件不陌生吧.ABViewer 是用来处理图纸和工程文档管理的一款通用软件.可以用它来查看,编辑,转换,测量和打印DWG和其他CAD文件,以及3D模型和光 ...

  6. mariadb远程授权问题

    安装mariadb后,使用远程连接时 密码没有问题 但是每次打开都报这个错误: 这个错误是在进行远程连接的时候密码正确, 但是,进行远程授权的时候授权密码错误. 在数据库中执行下述代码即可: GRAN ...

  7. day 26作业

    作业 1.整理TCP三次握手.四次挥手图 三次握手 起初A和B都处于CLOSED状态--B创建TCB,处于LISTEN状态,等待A请求--A创建TCB,发送连接请求(SYN=1,seq=x),进入SY ...

  8. python(练习题)

    1.请写出冒泡排序将list1进行排序? List1 = [1,2,34,12,33,25,12,33,90,28] 2.使用python语言打印出name=”I love python”的长度 3. ...

  9. SQL Text Literals 文本

    Text Literals 文本 Use the text literal notation to specify values whenever string appears in the synt ...

  10. SHELL脚本编程-字符串处理

    SHELL脚本编程-字符串处理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.字符串切片 [root@node101.yinzhengjie.org.cn ~]# echo { ...