LeetCode:3115. 质数的最大距离(Java 筛质数)

07-08 1797阅读

目录

LeetCode:3115. 质数的最大距离(Java 筛质数)
(图片来源网络,侵删)

3115. 质数的最大距离

题目描述:

实现代码与解析:

筛质数

原理思路:


3115. 质数的最大距离

题目描述:

给你一个整数数组 nums。

返回两个(不一定不同的)质数在 nums 中 下标 的 最大距离。

示例 1:

输入: nums = [4,2,9,5,3]

输出: 3

解释: nums[1]、nums[3] 和 nums[4] 是质数。因此答案是 |4 - 1| = 3。

示例 2:

输入: nums = [4,8,2,8]

输出: 0

解释: nums[2] 是质数。因为只有一个质数,所以答案是 |2 - 2| = 0。

实现代码与解析:

筛质数

class Solution {
    int N = 101;
    boolean[] np = new boolean[N];
    public int maximumPrimeDifference(int[] nums) {
        getPrimes();
        int i = 0;
        while (!isPrime(nums[i])) {
            i++;
        }
        int j = nums.length - 1;
        while (!isPrime(nums[j])) {
            j--;
        }
        return j - i;
    }
    public void getPrimes() {
        np[1] = true;
        for (int i = 2; i * i 
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]