首页 > 试题广场 >

查找组成一个偶数最接近的两个素数

[编程题]查找组成一个偶数最接近的两个素数
  • 热度指数:144704 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。

数据范围:输入的数据满足

输入描述:

输入一个大于2的偶数



输出描述:

从小到大输出两个素数

示例1

输入

20

输出

7
13
示例2

输入

4

输出

2
2
头像 人生苦短,但求成长
发表于 2022-02-09 10:54:04
def isSuShu(x): if x <= 2: return True else: for i in range(2, int(x ** 0.5) + 1): if x % i == 0: return Fa 展开全文
头像 江南好___
发表于 2021-12-08 16:52:00
描述 题目描述 任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。 示例 输入: 20 输出: 7 13 知识点:穷举,贪心,数组,基础数学 难度:⭐⭐⭐ 题解 方法一:穷举 解题思路: 对于一个数字,我们可以从2遍 展开全文
头像 牛客877238306号
发表于 2021-10-26 10:25:32
从输入的偶数的一半开始找,到2,找出其中所有素数,再判断另外一个数是不是素数 while True: try: n = int(input()) prime = [] for i in range(int(n/2), 1,-1): 展开全文
头像 派仔
发表于 2020-08-12 17:36:10
import java.util.*; public class Main { public Main() { } private boolean isPrime(int num) { for (int i = 2; i <= num/i; i++ 展开全文
头像 杜光宇
发表于 2022-03-03 23:43:14
#include<stdio.h> #include<math.h> int is_prim(int a){ int prim = 1; int x = sqrt(a)+1; for(int i=2; i<x; i++){ if(a%i==0){ 展开全文
头像 摸鱼学大师
发表于 2021-10-27 19:00:59
题目的主要信息: 任意一个大于2的偶数都可以由2个素数组成,组成偶数的2个素数有很多种情况 求组成指定偶数的两个素数差值最小的素数对 一定输出大于2的偶数,最大不超过1000 方法一:穷举 具体做法: 对于一个数字,我们可以从2遍历到n,寻找两个加数都是素数的情况,然后比较素数之间的差值,把要输 展开全文
头像 无情派大星
发表于 2020-03-03 23:57:41
import java.util.*; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.h 展开全文
头像 任致志
发表于 2022-06-14 17:42:35
""" 思路:二分后枚举 列出包含中间界n//2及以内的所有素数 从最后一个素数i往前找,若第一出现的n-i也是素数,则i与n-i是所找素数对中间距最小的一对。 """ def isPrime(i):     """判断是否为素数的函数""" &n 展开全文
头像 fuxiaoxian
发表于 2021-10-10 18:25:08
import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); w 展开全文
头像 sherlockkc
发表于 2020-02-02 12:00:37
从中间n/2向两侧遍历,找到第一组和为n的素数组合就打印即可,一定注意要加break,不然会继续遍历打印其它素数组合isPrime:判断一个数后是否是素数的标准是看除了1和它本身是否有其它数可以作为它的因数,有的话就不是返回false import java.util.*; public class 展开全文