给你数字 k ,请你返回和为 k 的斐波那契数字的最少数目,其中,每个斐波那契数字都可以被使用多次。 斐波那契数字定义为: • F1 = 1 • F2 = 1 • Fn = Fn-1 + Fn-2 , 其中 n > 2 。 数据保证对于给定的 k ,一定能找到可行解。
给你两个正整数:n 和 target 。 如果数组 nums 满足下述条件,则称其为 美丽数组 。 • nums.length == n. • nums 由两两互不相同的正整数组成。 • 在范围 [0, n-1] 内,不存在 两个 不同 下标 i 和 j ,使得 nums[i] + nums[j] == target 。 返回符合条件的美丽数组所可能具备的 最小 和,并对结果进行取模 109 + 7。
有一个无穷大的二维网格图,一开始所有格子都未染色。给你一个正整数 n ,表示你需要执行以下步骤 n 分钟: • 第一分钟,将 任一 格子染成蓝色。 • 之后的每一分钟,将与蓝色格子相邻的 所有 未染色格子染成蓝色。 下图分别是 1、2、3 分钟后的网格图。 请你返回 n 分钟之后 被染色的格子 数目
给你两个整数 n 和 k 。 对于一个由 不同 正整数组成的数组,如果其中不存在任何求和等于 k 的不同元素对,则称其为 k-avoiding 数组。 返回长度为 n 的 k-avoiding 数组的可能的最小总和。
给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k >= 2 ),并使这些整数的乘积最大化。 返回 你可以获得的最大乘积 。
给你一个整数 n ,返回大于或等于 n 的最小 回文质数。 一个整数如果恰好有两个除数:1 和它本身,那么它是 质数 。注意,1 不是质数。 • 例如,2、3、5、7、11 和 13 都是质数。 一个整数如果从左向右读和从右向左读是相同的,那么它是 回文数 。 • 例如,101 和 12321 都是回文数。 测试用例保证答案总是存在,并且在 [2, 2 * 108] 范围内。
给你一个整数数组 queries 和一个 正 整数 intLength ,请你返回一个数组 answer ,其中 answer[i] 是长度为 intLength 的 正回文数 中第 queries[i] 小的数字,如果不存在这样的回文数,则为 -1 。 回文数 指的是从前往后和从后往前读一模一样的数字。回文数不能有前导 0 。
如果一个整数 n 在 b 进制下(b 为 2 到 n - 2 之间的所有整数)对应的字符串 全部 都是 回文的 ,那么我们称这个数 n 是 严格回文 的。 给你一个整数 n ,如果 n 是 严格回文 的,请返回 true ,否则返回 false 。 如果一个字符串从前往后读和从后往前读完全相同,那么这个字符串是 回文的 。
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 • 例如,121 是回文,而 123 不是。
给你一个 下标从 0 开始 的正整数数组 w ,其中 w[i] 代表第 i 个下标的权重。 请你实现一个函数 pickIndex ,它可以 随机地 从范围 [0, w.length - 1] 内(含 0 和 w.length - 1)选出并返回一个下标。选取下标 i 的 概率 为 w[i] / sum(w) 。 • 例如,对于 w = [1, 3],挑选下标 0 的概率为 1 / (1 + 3) = 0.25 (即,25%),而选取下标 1 的概率为 3 / (1 + 3) = 0.75(即,75%)。
给定方法 rand7 可生成 [1,7] 范围内的均匀随机整数,试写一个方法 rand10 生成 [1,10] 范围内的均匀随机整数。 你只能调用 rand7() 且不能调用其他方法。请不要使用系统的 Math.random() 方法。 每个测试用例将有一个内部参数 n,即你实现的函数 rand10() 在测试时将被调用的次数。请注意,这不是传递给 rand10() 的参数。
给你一个整数数组 nums ,设计算法来打乱一个没有重复元素的数组。打乱后,数组的所有排列应该是 等可能 的。 实现 Solution class: • Solution(int[] nums) 使用整数数组 nums 初始化对象 • int[] reset() 重设数组到它的初始状态并返回 • int[] shuffle() 返回数组随机打乱后的结果