leetcode 算法题575 (简单147) 罗马数字转整数

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

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

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

  • 注意

数组的长度为[2, 10,000],并且确定为偶数。
数组中数字的大小在范围[-100,000, 100,000]内。

  • 解法一
/*** @param {number[]} candies* @return {number}*/
var distributeCandies = function(candies) {return Math.min(candies.length / 2, new Set(candies).size);
};

执行用时 : 136 ms, 在所有 JavaScript 提交中击败了100.00%的用户

内存消耗 : 43.5 MB, 在所有 JavaScript 提交中击败了76.39%的用户

  • 解法二

/*** @param {number[]} candies* @return {number}*/
var distributeCandies = function(candies) {candies.sort((n1, n2) => n1 - n2);let i = 0; count = 1;while(i < candies.length - 1) {if(candies[i] !== candies[++i]) {count++;}}return Math.min(candies.length / 2, count);
};

执行用时 : 248 ms, 在所有 JavaScript 提交中击败了45.57%的用户

内存消耗 : 43.8 MB, 在所有 JavaScript 提交中击败了68.06%的用户

leetcode 算法题575 (简单147) 罗马数字转整数相关推荐

  1. 罗马数字 java_【leetcode刷题】[简单]13.罗马数字转整数(roman to integer)-java

    罗马数字转整数 roman to integer 题目 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M ...

  2. leetcode 算法题849 (简单240) 仅仅反转字母

    leetcode 算法题849 (简单240) 仅仅反转字母 题目介绍 给定一个字符串 S, 返回 "反转后的" 字符串, 其中不是字母的字符都保留在原地, 而所有字母的位置发生反 ...

  3. Leetcode刷题(4)罗马数字转整数

    最好的种树是十年前,其次是现在.歌谣 每天一个前端小知识 提醒你改好好学习了 知乎博主 csdn博主 b站博主  放弃很容易但是坚持一定很酷     我是歌谣 喜欢就一键三连咯 你得点赞是对歌谣最大的 ...

  4. LeetCode算法题整理(200题左右)

    目录 前言 一.树(17) 1.1.后序遍历 1.2.层次遍历 1.3.中序 1.4.前序 二.回溯(20) 2.1.普通回溯 2.2.线性回溯:组合.排列.子集.分割 2.3.矩阵回溯 三.二分查找 ...

  5. 【算法】LeetCode算法题-Remove Duplicates from Sorted Array

    这是悦乐书的第149次更新,第151篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第8题(顺位题号是26).给定一个已经排序(由小到大)的整数数组(元素可以重复),计算其 ...

  6. Leetcode算法题:两个有序数组求中位数

    Leetcode算法题:两个有序数组求中位数 要求时间复杂度为O(log(m+n)) 思路: 暴力解决:合并数组并排序,简单且一定能实现,时间复杂度O(m+n) 由于两个数组已经排好序,可一边排序一边 ...

  7. LeetCode算法题-Nth Digit(Java实现)

    这是悦乐书的第215次更新,第228篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第83题(顺位题号是400).找到无限整数序列的第n个数字1,2,3,4,5,6,7,8 ...

  8. LeetCode算法题-Reverse Linked List(Java实现)

    这是悦乐书的第192次更新,第195篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第51题(顺位题号是206).反转单链表.例如: 输入:1-> 2-> 3- ...

  9. LeetCode算法题-Convert a Number to Hexadecimal(Java实现)

    这是悦乐书的第219次更新,第231篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第86题(顺位题号是405).给定一个整数,写一个算法将其转换为十六进制.对于负整数,使 ...

  10. leetcode算法题--零钱兑换

    原题链接:https://leetcode-cn.com/problems/coin-change/ 相关题目:leetcode算法题–完全平方数★ 动态规划 dp[i] i从0到amount,dp[ ...

最新文章

  1. 大数据调度平台Airflow(一):什么是Airflow
  2. SIFT 特征检测及匹配
  3. 侠客风云传服务器维护,《侠客风云传online》4月20日服务器数据互通公告
  4. Android Opengl
  5. Python matplotlib高级绘图详解
  6. JSP 和 Servlet 区别
  7. hive把字符串转换为时间_关于hive的时间转换
  8. python能开发android吗_python可以开发安卓吗
  9. IT 人士工作中的十不要!
  10. 创建Struts 2简单应用的流程
  11. Linux可以打开cdr文件吗,CDR是什么格式
  12. 盗版网课有多猖狂?原价上万,只卖5元
  13. 数据中台常用术语整理
  14. 单向链表和双向链表的优缺点及使用场景
  15. 仓库库存表的三种设计方式
  16. 虚数的意义,虚数到底是什么
  17. 嵌入式系统开发笔记78:电话、电报发明给予我们的启示
  18. python生成随机的测验试卷_python生成随机的测验试卷文件
  19. 黑产揭秘:“打码平台”那点事儿
  20. 分享10款漂亮的css按钮源码

热门文章

  1. Android开发之传感器(加速度传感器、方向传感器)
  2. 关于高维空间的一些思考
  3. aws lambda_借助AWS Elastic Beanstalk轻松进行Spring Boot部署
  4. cadence SPB17.4 - 中文UI设置
  5. 日语动词变形(转载)
  6. 小程序从云服务器获取视频,小程序从云服务器获取视频代码
  7. H3C模拟器2012鼎杰终极版的基本使用教程
  8. 植物大战僵尸最全最新版修改存档
  9. SQL DATE 函数的用法
  10. unreal编译源码搭建dedicated server的流水账——但是细