当前位置: 首页 > news >正文

【康复学习--LeetCode每日一题】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。

提示:
1 <= nums.length <= 3 * 105
1 <= nums[i] <= 100
输入保证 nums 中至少有一个质数。

思路:

打表,将100以内的质数先穷举出来,然后用一个tmp记录第一个质数的下标,后面每遇到一个质数就去更新ans

代码:

class Solution {// 打表,将100以内的质数先穷举出来// 然后用一个tmp记录第一个质数的下标,后面每遇到一个质数就去更新anspublic int maximumPrimeDifference(int[] nums) {Set<Integer> primes = new HashSet<>(Arrays.asList(2, 3, 5, 7, 11,13, 17, 19, 23, 29,31, 37, 41, 43, 47,53, 59, 61, 67, 71,73, 79, 83, 89, 97));int n = nums.length;int tmp = -1, ans = 0;for (int i = 0; i < n; ++i) {if (primes.contains(nums[i])) {if (tmp != -1) {ans = Math.max(ans, i - tmp);} else {tmp = i;}}}return ans;}
}
http://www.lryc.cn/news/391993.html

相关文章:

  • 【yolov8系列】ubuntu上yolov8的开启训练的简单记录
  • Scala学习笔记15: 文件和正则表达式
  • 外卖员面试现状
  • 异步加载与动态加载
  • MUNIK解读ISO26262--什么是DFA
  • 启动spring boot项目停止 提示80端口已经被占用
  • SOLIDWORKS分期许可(订阅形式),降低前期的投入成本!
  • 详细分析Spring Boot 数据源配置的基本知识(附配置)
  • 海思SD3403/SS928V100开发(15)9轴IMU ICM-20948模块SPI接口调试
  • 大力出奇迹:大语言模型的崛起与挑战
  • 【算法 - 哈希表】两数之和
  • 【深度学习】图形模型基础(5):线性回归模型第一部分:认识线性回归模型
  • 2024 年第十四届 APMCM 亚太地区大学生数学建模竞赛B题超详细解题思路+数据预处理问题一代码分享
  • Yarn有哪些功能特点
  • 深度学习算法bert
  • PyTorch - 神经网络基础
  • docker-compose搭建minio对象存储服务器
  • vue3使用pinia中的actions,需要调用接口的话
  • Python酷库之旅-第三方库Pandas(003)
  • 社交电商中的裂变营销利器,二级分销模式,美妆家具成功案例分享
  • 【国产开源可视化引擎Meta2d.js】图层
  • 基于Redisson实现分布式锁
  • Android Studio下载Gradle特别慢,甚至超时,失败。。。解决方法
  • leetcode--二叉树中的最长交错路径
  • c++ primer plus 第15章友,异常和其他:15.1.3 其他友元关系
  • uniapp+vue3页面跳转和传参
  • 硬链接和软链接
  • 属性描述符初探——Vue实现数据劫持的基础
  • 字节也没余粮了?天底下没有永远免费的GPT-4;AI产品用订阅制就不合理!让用户掏钱的N种定价技巧嘿嘿 | ShowMeAI日报
  • 【Matlab 路径优化】基于蚁群算法的XX市旅游景点线路优化系统