计蒜客——Goldbach
- Goldbach
 - 判断大素数
 
#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的更多相关文章
- 计蒜客 Goldbach Miller_Rabin判别法(大素数判别法)
		
题目链接:https://nanti.jisuanke.com/t/25985 题目: Description: Goldbach's conjecture is one of the oldest ...
 - 计蒜客  作弊揭发者(string的应用)
		
鉴于我市拥堵的交通状况,市政交管部门经过听证决定在道路两侧安置自动停车收费系统.当车辆驶入车位,系统会通过配有的摄像头拍摄车辆画面,通过识别车牌上的数字.字母序列识别车牌,通过连接车管所车辆信息数据库 ...
 - 计蒜客的一道题dfs
		
这是我无聊时在计蒜客发现的一道题. 题意: 蒜头君有一天闲来无事和小萌一起玩游戏,游戏的内容是这样的:他们不知道从哪里找到了N根不同长度的木棍, 看谁能猜出这些木棍一共能拼出多少个不同的不等边三角形. ...
 - 计蒜客模拟赛5 D2T1 成绩统计
		
又到了一年一度的新生入学季了,清华和北大的计算机系同学都参加了同一场开学考试(因为两校兄弟情谊深厚嘛,来一场联考还是很正常的). 不幸的是,正当老师要统计大家的成绩时,世界上的所有计算机全部瘫痪了. ...
 - 计蒜客 等边三角形 dfs
		
题目: https://www.jisuanke.com/course/2291/182238 思路: 1.dfs(int a,int b,int c,int index)//a,b,c三条边的边长, ...
 - 计蒜客 方程的解数 dfs
		
题目: https://www.jisuanke.com/course/2291/182237 思路: 来自:https://blog.csdn.net/qq_29980371/article/det ...
 - 计蒜客 买书 dfs
		
题目: https://www.jisuanke.com/course/2291/182236 思路: 递归解决,从第一本书开始,每本书都有两种选择: //index是book里面每本书价格的下标, ...
 - 计蒜客:Entertainment Box
		
Ada, Bertrand and Charles often argue over which TV shows to watch, and to avoid some of their fight ...
 - 爬虫acm比赛成绩(多页成绩整合在一起、获取复制不了的数据)(hihocoder、计蒜客)
		
https://github.com/congmingyige/web-crawler_rank-of-competition-in-JiSuanKe-and-hihocoder 1. 计蒜客(获取复 ...
 
随机推荐
- ssm动态sql语句
			
1.将上面的元素分为四组来演示,分别为:[if,where,trim],[if,set,trim],[choose,when,otherwise],[foreach] ________________ ...
 - C# vb .net实现黑白效果特效滤镜
			
在.net中,如何简单快捷地实现Photoshop滤镜组中的黑白效果效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第 ...
 - linux 安装Python3.6
			
1.安装依赖 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel ...
 - 如何导出UML图片以及小人的组件在哪里
			
首先先要创建一个新项目 接着在右侧栏目创建一个modal 添加usecase,里面就有小人的组件(注意:是Add Diagram) 将做好的图进行保存程jpg格式(快捷键 ctrl +shift+D) ...
 - pandas-07 DataFrame修改index、columns名的方法
			
pandas-07 DataFrame修改index.columns名的方法 一般常用的有两个方法: 1.使用DataFrame.index = [newName],DataFrame.columns ...
 - 自定义指令 VUE基础回顾7
			
vue除了有v-if等内置指令,我们也可以创建自定义指令. 例:我们可以实现一个可以每隔一秒闪烁的节点,类似于<blink>标签的行为.添加一个指令类似于添加一个过滤器,可以将他传入vue ...
 - MySQL5.7应当注意的参数
			
简介: 本篇文章主要介绍 MySQL 初始化应当注意的参数,对于不同环境间实例迁移,这些参数同样应当注意. 注: 本文介绍的参数都是在配置文件 [mysqld] 部分. server_id 和 log ...
 - day 19 作业
			
今日作业 1.什么是对象?什么是类? 对象是特征与技能的结合体,类是一系列对象相同的特征与技能的结合体 2.绑定方法的有什么特点 由对象来调用称之为对象的绑定方法,不同的对象调用该绑定方法,则会将不同 ...
 - MySQL- [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GR
			
新建的mysql,在查询时报异常信息,虽然有正常执行结果. [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY claus ...
 - 两种方式测试 GNS3 环境
			
GNS3已经部署好了,怎么测试环境呢?两种方式,一是使用自带的VPC连接交换机互联互通,二是配合VMware连接GNS3中的交换机互联互通. 自带 VPC 测试 使用两台VPC与一台二层交换机相连,测 ...