avatar
问一下APY怎么算的# Money - 海外理财
j*l
1
这里总结一下,对很多基本二分查找的变体题目,比如找rotated的有序数组的reset
point (pivot),比如返回相同元素的连续段的第一个或者最后一个,我们可以考虑如
下思路。
如果我们让while处理三个元素(含)以上的情形,边界情况的困难往往就被消除了
然后while外头处理两个元素或一个元素的情形是很容易的
while (high - low > 1)
{
// 处理至少三个元素,无需边界处理
}
// 处理至多两个元素
当然,我发过相关的帖子,如果你遇到固执的面试官,不理解你为何那样处理,非要
很隐晦地暗示你必须采用如下的传统处理(最适用基本二分查找,因为几乎没有边界处
理)
while (low <= high)
{
// 一堆容易出错的边界处理
}
那也只能顺其所好,考虑周全,好好把while里头各种边界情况写好吧。否则面完后被
拒不说,还被背地里扣上不能很好follow面试官的suggestion的帽子。
avatar
N*0
2
现在的saving account是
Interest Rate 1.00%
Current APY 1.01%
如果我有6万块存在这个账户里,是不是一年能有600块利息,平摊到一个月大概就是50?
这样理解对么
avatar
h*6
3
有的时候,需要求最大满足条件 A 的数,或者最小满足不条件 A 的数。
首先,设定初始值,使得 low 一定满足条件 A ,high 一定满足不条件 A。
然后,根据 mid 是否满足条件 A ,调整 low 或者 high。
调整过程中,应始终保持 low 满足条件 A ,high 满足不条件 A。
当 high=low+1 时循环结束,根据题目要求返回 low 或者 high。
avatar
y*i
4
$606

【在 N**0 的大作中提到】
: 现在的saving account是
: Interest Rate 1.00%
: Current APY 1.01%
: 如果我有6万块存在这个账户里,是不是一年能有600块利息,平摊到一个月大概就是50?
: 这样理解对么

avatar
h*6
5
题目举例:
把一个正整数数组,分成连续的 k 段,求每一段的和的最大值的最小值。
avatar
s*t
6
我记得好像有个题是让数组分K段,求最大值与最小值的差,使其最小
完全没思路

【在 h**6 的大作中提到】
: 题目举例:
: 把一个正整数数组,分成连续的 k 段,求每一段的和的最大值的最小值。

avatar
h*6
7

这题有两种解法,可以使用 DP 法,也可以使用二分法。
DP 法:
设 dp[m][x] 表示把数组的前 m 项分成 x 段时,每段和的最大值的最小值。
时间复杂度为 O(n^2*k)
二分法:
设每一段和都不超过 s,求原数组是否能分成不超过 k 段。
时间复杂度为 O(32n),其中32是 int 位数,也是二分法最多需要进行的次数。

【在 h**6 的大作中提到】
: 题目举例:
: 把一个正整数数组,分成连续的 k 段,求每一段的和的最大值的最小值。

avatar
I*A
8
啊,我题目都没看懂

【在 s*********t 的大作中提到】
: 我记得好像有个题是让数组分K段,求最大值与最小值的差,使其最小
: 完全没思路

avatar
I*A
9
忘了赞一个。。

【在 j**l 的大作中提到】
: 这里总结一下,对很多基本二分查找的变体题目,比如找rotated的有序数组的reset
: point (pivot),比如返回相同元素的连续段的第一个或者最后一个,我们可以考虑如
: 下思路。
: 如果我们让while处理三个元素(含)以上的情形,边界情况的困难往往就被消除了
: 然后while外头处理两个元素或一个元素的情形是很容易的
: while (high - low > 1)
: {
: // 处理至少三个元素,无需边界处理
: }
: // 处理至多两个元素

avatar
K*g
10
请问能把题目说清楚一下吗?“分成连续的k段”有很多种分法,然后要求的是不同分
法中每段的和的最大值的最小吗?

【在 h**6 的大作中提到】
: 题目举例:
: 把一个正整数数组,分成连续的 k 段,求每一段的和的最大值的最小值。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。