给你两个整数 n 和 s。
考虑所有小于等于 n 的 质数。从中选择一些质数,并满足以下条件:
s。返回一个包含所选质数的整数数组,并按 递增 顺序排列。如果存在多个最优选择,返回其中 任意一个 即可。
如果无法选择任何质数,则返回一个 空 数组。
质数 是大于 1 且只有 1 和它本身两个因数的自然数。
示例 1:
输入: n = 7, s = 20
输出: [2,3,5,7]
解释:
n = 7 的质数为 2、3、5 和 7。2 + 3 + 5 + 7 = 17,小于等于 s = 20。[2, 3, 5, 7]。示例 2:
输入: n = 15, s = 15
输出: [3,5,7]
解释:
n = 15 的质数为 2、3、5、7、11 和 13。[3, 5, 7],其总和为 3 + 5 + 7 = 15。2 + 3 + 5 + 7 = 17,大于 s = 15。因此,不可能选择四个或更多质数,最多只能选择三个质数。[3, 5, 7] 是一种可行答案。其他合法答案还包括 [2, 3, 5]、[2, 3, 7] 和 [2, 5, 7]。示例 3:
输入: n = 5, s = 1
输出: []
解释:
s = 1。
提示:
1 <= n <= 1061 <= s <= 109