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

来源:互联网 发布:苹果数据流量不统计 编辑:程序博客网 时间:2024/05/21 10:36

题目描述:

任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。

请实现如下接口:

    public static class PrimePair
    {
       public int primeMin;
       public int primeMax;
    }
    public static PrimePair findPrimeNumber(int number)
    {
        /* 请实现 */
       return null;

    }

譬如: 输入20 ,输出 7 13

约束: number为输入的偶数,5 < inum <= 10000

知识点: 循环

输入: 输入一个偶数

输出: 

较小的素数

较大的素数

样例输入:

20

样例输出:

7

13

代码:

#include <iostream>  #define MIN 5  #define MAX 10000  using namespace std;  int isPrime(int num)  {      for (int i = 2; i <= sqrt(num); i++)          if (num%i == 0)              return 0;      return 1;  }  int main()  {      int num;      cin >> num;      if (num <= MIN || num > MAX || num % 2 != 0)          return -1;      int ave = num / 2;      for (int i = 1; i < ave; i++)          if (isPrime(ave - i) && isPrime(ave + i))          {              cout << ave - i << endl << ave + i << endl;              break;          }      return 0;  }
得分运行时间内存复杂度最大嵌套深度100(100)16ms2068KB73

0 0
原创粉丝点击