【数组】【打卡65天】leetCode每日一题:575. 分糖果
2021/11/1 23:10:41
本文主要是介绍【数组】【打卡65天】leetCode每日一题:575. 分糖果,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.题目描述
Alice 有 n 枚糖,其中第 i 枚糖的类型为 candyType[i] 。Alice 注意到她的体重正在增长,所以前去拜访了一位医生。
医生建议 Alice 要少摄入糖分,只吃掉她所有糖的 n / 2 即可(n 是一个偶数)。Alice 非常喜欢这些糖,她想要在遵循医生建议的情况下,尽可能吃到最多不同种类的糖。
给你一个长度为 n 的整数数组 candyType ,返回: Alice 在仅吃掉 n / 2 枚糖的情况下,可以吃到糖的最多种类数。
2.算法分析
①糖果最后只能吃糖果总数的一半:n/2
②使用Set集合,取出重复的,也就是计算糖果的种类数
③判断set集合元素数和 n/2 ,当set.size() >= n/2的时候,临界值也就是最大值。
3.代码实现
import java.util.*; class Solution { public int distributeCandies(int[] candyType) { Set<Integer> set = new HashSet<>(); int len = candyType.length / 2; for(int i = 0;i < candyType.length;i++){ set.add(candyType[i]); if(set.size() >= len){ break; } } return set.size(); } }
这篇关于【数组】【打卡65天】leetCode每日一题:575. 分糖果的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-05feign默认connecttimeout和readtimeout是多少-icode9专业技术文章分享
- 2024-07-05idea控制台,日志太多,导致部分想看得日志被刷走 搜不到-icode9专业技术文章分享
- 2024-07-05The server selected protocol version Tls10 is not accepted by client preferences [TLs12]-icode9专业技术文章分享
- 2024-07-05怎么清理项目缓存-icode9专业技术文章分享
- 2024-07-04安装 Eyoucms详细图文教程-icode9专业技术文章分享
- 2024-07-04ueditor 复制文章时,图片的链接是一个下载图片地址,该如何处理?-icode9专业技术文章分享
- 2024-07-04怎样判断host有没有对wordpress有缓存呢-icode9专业技术文章分享
- 2024-07-04具有编译功能的系统make后,无法ssh连接-icode9专业技术文章分享
- 2024-07-04make后如何升级ssh-icode9专业技术文章分享
- 2024-07-03微信支付提示下单账户与支付账户不一致-icode9专业技术文章分享