欢迎光临散文网 会员登陆 & 注册

LeetCode 2558. Take Gifts From the Richest Pile

2023-02-10 11:59 作者:您是打尖儿还是住店呢  | 我要投稿

You are given an integer array gifts denoting the number of gifts in various piles. Every second, you do the following:

  • Choose the pile with the maximum number of gifts.

  • If there is more than one pile with the maximum number of gifts, choose any.

  • Leave behind the floor of the square root of the number of gifts in the pile. Take the rest of the gifts.

Return the number of gifts remaining after k seconds.

 

Example 1:

Input: gifts = [25,64,9,4,100], k = 4Output: 29Explanation: The gifts are taken in the following way: - In the first second, the last pile is chosen and 10 gifts are left behind. - Then the second pile is chosen and 8 gifts are left behind. - After that the first pile is chosen and 5 gifts are left behind. - Finally, the last pile is chosen again and 3 gifts are left behind. The final remaining gifts are [5,8,9,4,3], so the total number of gifts remaining is 29.

Example 2:

Input: gifts = [1,1,1,1], k = 4Output: 4Explanation: In this case, regardless which pile you choose, you have to leave behind 1 gift in each pile. That is, you can't take any pile with you. So, the total gifts remaining are 4.

 

Constraints:

  • 1 <= gifts.length <= 103

  • 1 <= gifts[i] <= 109

  • 1 <= k <= 103

Accepted

20,467

Submissions

31,124

1:写一个函数返回最大值的index;

2:每次对最大值进行开平方根;

3:最后求数组的和,返回即可;

用的是普通的遍历,easy题目了;

Runtime: 8 ms, faster than 27.13% of Java online submissions for Take Gifts From the Richest Pile.

Memory Usage: 41.4 MB, less than 99.19% of Java online submissions for Take Gifts From the Richest Pile.


LeetCode 2558. Take Gifts From the Richest Pile的评论 (共 条)

分享到微博请遵守国家法律