题目大意:
制作 m 束花所需的最少天数
给你一个整数数组 bloomDay,以及两个整数 m 和 k 。
现需要制作 m 束花。制作花束时,需要使用花园中 相邻的 k 朵花 。
花园中有 n 朵花,第 i 朵花会在 bloomDay[i] 时盛开,恰好 可以用于 一束 花中。
请你返回从花园中摘 m 束花需要等待的最少的天数。如果不能摘到 m 束花则返回 -1 。
继续阅读题目大意:
制作 m 束花所需的最少天数
给你一个整数数组 bloomDay,以及两个整数 m 和 k 。
现需要制作 m 束花。制作花束时,需要使用花园中 相邻的 k 朵花 。
花园中有 n 朵花,第 i 朵花会在 bloomDay[i] 时盛开,恰好 可以用于 一束 花中。
请你返回从花园中摘 m 束花需要等待的最少的天数。如果不能摘到 m 束花则返回 -1 。
继续阅读题目大意:
安排邮筒
给你一个房屋数组houses 和一个整数 k ,其中 houses[i] 是第 i 栋房子在一条街上的位置,现需要在这条街上安排 k 个邮筒。
请你返回每栋房子与离它最近的邮筒之间的距离的 最小 总和。
答案保证在 32 位有符号整数范围以内。
题目大意:
所有蚂蚁掉下来前的最后一刻
有一块木板,长度为 n
个 单位 。一些蚂蚁在木板上移动,每只蚂蚁都以 每秒一个单位 的速度移动。其中,一部分蚂蚁向 左 移动,其他蚂蚁向 右 移动。
当两只向 不同 方向移动的蚂蚁在某个点相遇时,它们会同时改变移动方向并继续移动。假设更改方向不会花费任何额外时间。
而当蚂蚁在某一时刻 t
到达木板的一端时,它立即从木板上掉下来。
给你一个整数 n
和两个整数数组 left
以及 right
。两个数组分别标识向左或者向右移动的蚂蚁在 t = 0
时的位置。请你返回最后一只蚂蚁从木板上掉下来的时刻。
题目大意:
最多 K 次交换相邻数位后得到的最小整数
给你一个字符串 num
和一个整数 k
。其中,num
表示一个很大的整数,字符串中的每个字符依次对应整数上的各个 数位 。
你可以交换这个整数相邻数位的数字 最多 k
次。
请你返回你能得到的最小整数,并以字符串形式返回。
复制带随机指针的链表
给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。
要求返回这个链表的 深拷贝。
我们用一个由 n 个节点组成的链表来表示输入/输出中的链表。每个节点用一个 [val, random_index] 表示:
val:一个表示 Node.val 的整数。
random_index:随机指针指向的节点索引(范围从 0 到 n-1);如果不指向任何节点,则为 null 。
题目大意:
克隆含随机指针的二叉树
A binary tree is given such that each node contains an additional random pointer which could point to any node in the tree or null.
Return a deep copy of the tree.
The tree is represented in the same input/output way as normal binary trees where each node is represented as a pair of [val, random_index]
where:
val
: an integer representing Node.val
random_index
: the index of the node (in the input) where the random pointer points to, or null
if it does not point to any node.You will be given the tree in class Node
and you should return the cloned tree in class NodeCopy
. NodeCopy
class is just a clone of Node
class with the same attributes and constructors.
题目大意:
设计一个文件共享系统
我们使用一个文件共享系统来分享一个由m个区块构成的超大文件,区块的id从1到m。
当一个用户加入到这个系统后,系统会分配给他一个唯一的id,这个id在系统中只能有一名用户使用。不过当该用户退出系统后,这个id则可以被其他用户复用。
每个用户都可以指定请求文件的区块,系统会返回给用户一个清单,其中包含当前系统中拥有该区块的用户列表。如果至少有一位用户拥有该区块,那么当前用户也能获得该区块。
请实现 FileSharing
类:
FileSharing(int m)
构造函数,构造一个拥有m个区块的FileSharing对象.int join(int[] ownedChunks)
: 一名用户加入系统,他拥有文件的某些区块。系统将分配给该他一个用户id,须保证这个id是最小并且没有被其他用户所占用。函数返回值为该用户分配到的idvoid leave(int userID)
: id为 userID
的用户退出系统后,你不能再通过该用户获得任何文件区块。int[] request(int userID, int chunkID)
: id为userID
的用户请求id为chunkID的区块。请返回拥有该区块的用户id列表,并使用用户id对列表进行升序排列。题目大意:
去掉最低工资和最高工资后的工资平均值
给你一个整数数组 salary ,数组里每个数都是 唯一 的,其中 salary[i] 是第 i 个员工的工资。
请你返回去掉最低工资和最高工资以后,剩下员工工资的平均值。
继续阅读