JAVA-1007. 素数对猜想 (20)

简介: 让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。

让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

现给定任意正整数N (< 105),请计算不超过N的满足猜想的素数对的个数。

输入格式:每个测试输入包含1个测试用例,给出正整数N。

输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。

输入样例:
20
输出样例:
4

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/**
 * @author 543363559@qq.com
 * @date 2017年7月10日 下午10:44:57
 */
public class Main {
    static int n;
    static int ans = 0;
    static List<Integer> list = new ArrayList<>();

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        // 把素数存入list
        for (int i = 2; i <= n; i++) {
            if (isPrime(i)) {
                list.add(i);
            }
        }
        // 判断素数对
        for (int i = 1; i < list.size(); i++) {
            if (list.get(i) - list.get(i - 1) == 2) {
                ans++;
            }
        }
        System.out.println(ans);
    }

    // 判断素数
    public static boolean isPrime(int n) {
        for (int i = 2; i <= Math.sqrt(n); i++) {
            if (n % i == 0) {
                return false;
            }
        }
        return true;
    }

}
目录
相关文章
|
6月前
|
Java
【java作业3——类的定义】复数,连续子数组,最大素数
🍒 1 定义复数类 作业内容: 定义一个复数类Complex(数据成员:a,b表示复数a+bi).并配以合适的方法完成复数对象的生成、复数的运算(加、减、乘除),然后做一个主类测试它。
50 0
|
3月前
|
存储 算法 Java
LeetCode初级算法题:反转链表+统计N以内的素数+删除排序数组中的重复项Java详解
LeetCode初级算法题:反转链表+统计N以内的素数+删除排序数组中的重复项Java详解
44 0
|
6月前
|
算法 C++ Python
Java每日一练(20230430) 文本左右对齐、素数和、整数转英文表示
Java每日一练(20230430) 文本左右对齐、素数和、整数转英文表示
54 0
Java每日一练(20230430) 文本左右对齐、素数和、整数转英文表示
|
Java
Java实现判断素数
Java实现判断素数
48 0
Java实现判断素数
|
Java C语言
显示输出2~100中的素数,每行显示5个数 java 和 c语言
显示输出2~100中的素数,每行显示5个数 java 和 c语言
223 0
运用Java的for循环输出指定条件的素数
运用Java的for循环输出指定条件的素数
运用Java的for循环输出指定条件的素数
Java实现一百以内的所有素数的三种方式
Java实现一百以内的所有素数的三种方式
192 1
|
Java
Java经典编程习题100例:第22例:判断随机整数是否是素数
Java经典编程习题100例:第22例:判断随机整数是否是素数
81 0
1099 性感素数(JAVA)
“性感素数”是指形如 (p, p+6) 这样的一对素数。之所以叫这个名字,是因为拉丁语管“六”叫“sex”(即英语的“性感”)。(原文摘自 http://mathworld.wolfram.com/SexyPrimes.html)
1099 性感素数(JAVA)
|
Java
用Java编写的素数代码,判断两个数之间的素数的个数以及素数
用Java编写的素数代码,判断两个数之间的素数的个数以及素数。
144 0
用Java编写的素数代码,判断两个数之间的素数的个数以及素数