题目:给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。 示例: 输入: 10 输出: 36 解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。 说明: 你可以假设 n 不小于 2 且不大于 58。 分析: 1.定义一个状态转 ...
分类:
其他好文 时间:
2020-04-06 14:03:57
阅读次数:
74
D: 魔法少女资格面试 题目描述 众所周知,魔法少女是一个低危高薪职业。随着近年来报考魔法少女的孩子们越来越多,魔法少女行业已经出现饱和现象!为了缓和魔法少女界的就业压力,魔法少女考核员丁丁妹决定增加魔法少女资质考核的难度。然而,即使如此,通过资质考核的魔法少女们数量仍然过多,因此,丁丁妹决心增加一 ...
分类:
其他好文 时间:
2020-04-06 13:38:53
阅读次数:
73
面试题42. 连续子数组的最大和 题目要求: 解题思路: 1. 定义子问题: dp[i] 为下标以 num[i] 结尾的数组字段 元素最大最短和,i表示子段到当前i位置 i; 2. 寻找关系式: 只有一个元素:dp[0] = num[0]; 两个元素:dp[i] 为num[0], num[1], n ...
分类:
编程语言 时间:
2020-04-06 11:54:02
阅读次数:
67
题目:给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点。 示例: 给定 nums = [-2, 0, 3, -5, 2, -1],求和函数为 sumRange() sumRange(0, 2) -> 1 sumRange(2, 5) -> ...
分类:
编程语言 时间:
2020-04-06 11:50:29
阅读次数:
60
这是经典的谷歌面试题,也是经典的动态规划问题 根据y总的说法,动态规划问题要划分集合,表示状态 对于这道题,有两个经典的解法,他们的复杂度不同,因为对状态的定义略有不同 1.最常规的思想,设计状态为前i层用j个鸡蛋所能测的最坏情况的最小值是多少 我相信集合的定义很多人能想到,但是状态的定义还需要进行 ...
题目标签:Array 为了实现单调递增,需要把某些0变成1,或者某些1变成0,而且要返回的是“最少的反转次数”,这里要分两种情况: 1. 当 i - 1 是0: 那么 i 这个数字是0 或者 1 的话 都是递增; 2. 当 i - 1 是1: 那么 i 需要是 1 才能 继续保持递增。 利用动态规划 ...
分类:
其他好文 时间:
2020-04-06 10:02:41
阅读次数:
63
1、动态规划算法: 1)求解过程使用多阶段决策过程,每一步处理一个子问题,可用于求解组合优化问题; 2)适用条件:问题需要满足优化原则或最优子结构性质,既:一个最优决策序列的任何子序列本身一定是相对于子序列的初试和结束状态是最优决策序列。 2.动态规划设计要素: 1)问题建模:优化的目标函数是什么, ...
分类:
编程语言 时间:
2020-04-05 23:53:45
阅读次数:
112
01背包剖析 问题引入 题目来源: "ACwing:01背包问题" 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。 输入格式 第一行两个整数,N,V,用 ...
分类:
其他好文 时间:
2020-04-05 13:44:02
阅读次数:
61
题目描述 给出一段序列,选出其中连续且非空的一段使得这段和最大。 输入描述 第一行是一个正整数 N ( 1 ≤ N ≤ 200000 ) ,表示了序列的长度。 接下来的 N 行包含 N 个绝对值不大于 10000 的整数 A [ i ] ,描述了这段序列。 输出描述 仅包括 1 个整数,为最大的子段 ...
分类:
其他好文 时间:
2020-04-05 13:19:36
阅读次数:
66
题目内容 Alice 和 Bob 用几堆石子在做游戏。几堆石子排成一行,每堆石子都对应一个得分,由数组 stoneValue 给出。 Alice 和 Bob 轮流取石子,Alice 总是先开始。在每个玩家的回合中,该玩家可以拿走剩下石子中的的前 1、2 或 3 堆石子 。比赛一直持续到所有石头都被拿 ...
分类:
其他好文 时间:
2020-04-05 13:12:04
阅读次数:
80