🗒️2601. 质数减法运算
2024-12-3
| 2024-12-3
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Dec 3, 2024 05:28 AM
给你一个下标从 0 开始的整数数组 nums ,数组长度为 n 。
你可以执行无限次下述运算:
  • 选择一个之前未选过的下标 i ,并选择一个 严格小于 nums[i] 的质数 p ,从 nums[i] 中减去 p 。
如果你能通过上述运算使得 nums 成为严格递增数组,则返回 true ;否则返回 false 。
严格递增数组 中的每个元素都严格大于其前面的元素。

 
💡
需要注意的点
  1. 严格递增,只需要检查相邻的元素,不需要使用二重循环;
  1. upper_bound(primes, primes + cnt + 1, target); 可以在非 STL 容器中使用,需要明确起始和结束(注意结束位置)的地址信息。
  1. 题目是严格小于,需要注意问题的转换:在本题中,优先寻找大于两数之差的最小质数,这样才能满足严格递增。然后,判断质数是否小于该数。使其满足严格小于。
💡
小于某个数的最大数求法

从后往前

从前往后

参考 灵茶山艾府 ,利用贪心的思想,希望前面的数字尽可能小。

📎 参考

  • 【题单】数学算法
  • Important
  • 2523. 范围内最接近的两个质数204. 计数质数
    Loading...