给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果。你需要把这些糖果平均分给一个弟弟和一个妹妹。返回妹妹可以获得的最大糖果的种类数。

示例1:
输入: candies = [1,1,2,2,3,3]
输出: 3
解析: 一共有三种种类的糖果,每一种都有两个。
最优分配方案:妹妹获得[1,2,3],弟弟也获得[1,2,3]。这样使妹妹获得糖果的种类数最多。

示例2:
输入: candies = [1,1,2,3]
输出: 2
解析: 妹妹获得糖果[2,3],弟弟获得糖果[1,1],妹妹有两种不同的糖果,弟弟只有一种。这样使得妹妹可以获得的糖果种类数最多。

注意:

  1. 数组的长度为[2, 10,000],并且确定为偶数。
  2. 数组中数字的大小在范围[-100,000, 100,000]内。
/*** @param {number[]} candies* @return {number}*/
var distributeCandies = function(candies) {};

个人解法

var distributeCandies = function(candies) {//示例 [1,1,2,2,3,3] -> 3var result = [];//妹妹分到的 result -> [1,2,3]//弟弟分到的 candies -> [1,2,3]for(var i = 0; i < candies.length; i++){if(result.indexOf(candies[i]) === -1){result.push(candies[i]);candies.splice(i , 1);i--;}}//弟弟妹妹分到的如果数目不同则从多的人那里拿给少的人while(result.length !== candies.length){if(result.length > candies.length){candies.push(result.pop());}else{result.push(candies.pop());}}//去重result = [...new Set(result)];return result.length;
};

LeetCode(575)——分糖果(JavaScript)相关推荐

  1. LeetCode 575. 分糖果(set集合去重)

    1. 题目 给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果.你需要把这些糖果平均分给一个弟弟和一个妹妹.返回妹妹可以获得的最大糖果的种类数. 输入: candies ...

  2. leetcode 575. 分糖果

    class Solution(object):def distributeCandies(self, candies):""":type candies: List[in ...

  3. leetcode 575. 分糖果(Java版)

    题目 https://leetcode-cn.com/problems/distribute-candies/ 题解 class Solution {public int distributeCand ...

  4. 2022-4-8 Leetcode 575.分糖果

    class Solution {public:int distributeCandies(vector<int>& candyType) {set<int> mySet ...

  5. leetcode 575 分糖果

    class Solution {public int distributeCandies(int[] candies) {int pre=-100001;Arrays.sort(candies);in ...

  6. LeetCode刷题之575.分糖果

    LeetCode刷题之575.分糖果 我不知道将去向何方,但我已在路上! 时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 ! 题目: 给定一个偶数长度的数组,其中不同的数字代表着不同 ...

  7. LeetCode 力扣C++题解 575. 分糖果

    题目描述:给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果.你需要把这些糖果平均分给一个弟弟和一个妹妹.返回妹妹可以获得的最大糖果的种类数.(难度:简单) 原题链接: ...

  8. 【快乐水题】575. 分糖果

    原题: 力扣链接:575. 分糖果 题目简述: Alice 有 n 枚糖,其中第 i 枚糖的类型为 candyType[i] .Alice 注意到她的体重正在增长,所以前去拜访了一位医生. 医生建议 ...

  9. LeetCode 1103. 分糖果 II

    1. 题目 排排坐,分糖果. 我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友. 给第一个小朋友 1 颗糖果,第二个小朋友 2 颗,依此类推,直到给最后 ...

  10. Leetcode - 1103. 分糖果 II 排排坐,分糖果。

    分糖果 II 排排坐,分糖果. 我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友. 给第一个小朋友 1 颗糖果,第二个小朋友 2 颗,依此类推,直到给最 ...

最新文章

  1. 证明实对称正定矩阵A的Gauss-Seidel法必定收敛(完整过程)
  2. linux内核更新/修补程序,Ubuntu 18.04.3 LTS无需重启即可轻松修补Linux内核
  3. PHP通知弹窗代码_公告弹窗
  4. java浮点数除以0_为什么用浮点数(或双精度)将数字除以零不会在Java中抛出java.lang.Arithmetic...
  5. 解决ubuntu系统udev多网卡名称变化的问题
  6. linux gfs文件系统,Linux环境下使用GFS文件系统
  7. 基本法求解位示图编号问题
  8. Perl 语言学习笔记
  9. 电信光猫HG2201T超级管理员模式
  10. 028_adblock
  11. 什么是蜂窝网络和蜂窝设备测试
  12. Kinect 姿势检测
  13. # 2gether 在一起 # 一份生日Party邀请函待查收
  14. 第二章:第一节数据清洗及特征处理-自测
  15. 如何批量在excel中将中文转换为汉语拼音(Excel文字转拼音两种方法)
  16. SecureCRT和乱码
  17. java v_java -v报错 java -version正确
  18. 百度api识别身份证信息
  19. Presto安装与使用
  20. 硅谷归来,七大感触——You Only Live Once

热门文章

  1. THINKPHP3文件缓存管理
  2. 你还在用notifyDataSetChanged?
  3. jsf初学解决GlassFish Server 无法启动
  4. Cocos2dx游戏开发系列笔记3:牛刀小试-忍者飞镖射幽灵的Demo
  5. 《Linux内核设计与实现》读书笔记(12)--- 内存管理(2)
  6. windows + visual studio 2010 配置SVN
  7. simhash与Google的网页去重(转)
  8. 黄刘生--数据结构--答案 2
  9. magento网站建设_跨境自建站Magento麦进斗代打包代贴单代发货
  10. 北大计算机基础与应用,北大16秋《计算机基础与应用-第六组》在线作业