题目 有 3n 堆数目不一的硬币,你和你的朋友们打算按以下方式分硬币:
每一轮中,你将会选出 任意 3 堆硬币(不一定连续)。 Alice 将会取走硬币数量最多的那一堆。 你将会取走硬币数量第二多的那一堆。 Bob 将会取走最后一堆。 重复这个过程,直到没有更多硬币。 给你一个整数数组 piles ,其中 piles[i] 是第 i 堆中硬币的数目。 返回你可以获得的最大硬币数目。
思路 因为bob取的最小的,所以直接可以把bob丢开不要,用sort方法排序,直接去掉最小的来算,因为我们自己取的是中间的那几个数,所以算到最大的三个下标为止结束。
问题 开始没想到这题跟Bob根本没关系,因为Bob拿的是最小的,所以计算的时候可以直接把他抛开,去掉最小的。 数组的排序方法可以用Java自带的Arrays.sort方法来进行从大到小来排序
代码 public class MaxCoins { public static void main(String[] args) { int[] piles = {2, 4, 1, 2, 7, 8}; int i = maxCoins(piles); System.out.println(i); } public static int maxCoins(int[] piles) { Arrays.sort(piles); int sum = 0; int index = piles.length - 2; for (int i = 0; i < piles.length / 3; i++) { sum += piles[index]; index = index - 2; } return sum; } }
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43178741/article/details/112689185
JVM1.垃圾回收算法标记-清除:标记已死对象,GC时直接清除。CMS回收器使用。 特点:简单、速度快,但会留有内存空间碎片,空...
一个忧国忧民的程序员
2021-01-21
阅读(666)
编译输出:nafxcwd.lib(afxglobals.obj):errorLNK2005:"public:virtual__thiscallCMemDC::~CMemDC(vo...
NickWuzh
2021-01-21
阅读(145)
1.需要的软件其中第一个软件,用于这种情况:把boot引导分区选择为win10系统,就需要使用HEUEFI进行手动添加引导项,以下教程没有用到这...
ljy123321ljy
2021-01-21
阅读(367)
python分割合并文件python分割文件将notebook.txt文件分割放到yyy文件夹中:python合并文件将yyy文件夹中的文件合并到以日期开头的日志文件中:运...
lijil168
2021-01-21
阅读(366)
本文首发地址:https://www.dawnsite.cn/archives/181.html1.字符串转换为JSON由于JSON的诸多优点,已被广泛应用于各个系统中...
Dawn_SSR
2021-01-21
阅读(785)
很多刚刚接触Unity3d的童鞋花了大量的时间自学,可总是把握不好Unity3d的烘焙,刚从一个坑里爬出来,又陷入另一个新的坑,每次烘焙一个场景...
ivanmrt
2021-01-21
阅读(492)
文章目录学习目标:步骤:1、解锁手机:2、下载线刷包:3、使用线刷宝刷机:4、打开USB调试5、打开线刷宝开始刷机学习目标...
奋斗吧-皮卡丘
2021-01-21
阅读(400)
最近看到一篇文章,对常用的存储方式进行了对比分析,原文写的不错,但是感觉还是不够简单,大道至简,下面按照自己的理解,...
算法模式
2021-01-21
阅读(988)
安装可通过PPA进行安装ffmpegsudoadd-apt-repositoryppa:kirillshkrogalev/ffmpeg-nextsudoapt-getupdatesudoapt-get...
刘小通通
2021-01-21
阅读(249)
否定联结词:否定,非,不是合取:∧p且q,p与q既。。又。。不但。。而且虽然。。但是一边。。一边析取:∨p或q相容或...
奕昕
2021-01-21
阅读(274)