陌路茶色/

LeetCode-数组部分

1535. 找出数组游戏的赢家

给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。
每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比较 arr[0] 与 arr[1] 的大小,较大的整数将会取得这一回合的胜利并保留在位置 0 ,较小的整数移至数组的末尾。当一个整数赢得 k 个连续回合时,游戏结束,该整数就是比赛的 赢家 。
返回赢得比赛的整数。
题目数据 保证 游戏存在赢家。
这个题目的本质是说是否需要动数组,知道这个题目就可解了,因为这种比较方式比到最后一个数字还没有结束,那么最后一个数字一定是这个数组中的最大值,那么接下来它的位置都不会变,即为赢家

1552. 两球之间的磁力

给定一个位置数组,给定m个球,将这m个球插入到给定的位置数组中,使得球之间的最小距离最大
思路:二分
最小距离用ant表示:
假设我们在 textit{left},textit{right} 的区间查找。每次取 textit{mid}mid 为 textit{left}left 和 textit{right}right 的平均值,进行如下操作:

如果当前的 textit{mid}mid 合法,则令 textit{ans}=textit{mid}ans=mid,并将区间缩小为 textit{mid}+1,textit{right};
如果当前的 textit{mid}mid 不合法,则将区间缩小为 textit{left},textit{mid}-1。

留下一条评论

共有 2 条评论

  1. Bin:

    苦笑,Hi,博主, 这是一条跨界询问哈,在pytorch-biggraph的repo发现您曾经提过关于分布式下的PBG的训练,想问一下下您是否解决了该问题呢?我在摸爬滚打阶段也碰到了这个问题,希望您能指点指点!

    October 21st, 2020 at 01:43 pm 回复
    1. moluchase:

      hi,你好,我没有解决,因为后面看到我们公司在使用euler[https://github.com/alibaba/euler],就直接用了。

      November 26th, 2020 at 05:31 pm 回复