Leetcode--781.森林中的兔子
森林中,每个兔子都有颜色。其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色。我们将这些回答放在 answers 数组里。
返回森林中兔子的最少数量。
示例:
输入: answers = [1, 1, 2]
输出: 5
解释:
两只回答了 "1" 的兔子可能有相同的颜色,设为红色。
之后回答了 "2" 的兔子不会是红色,否则他们的回答会相互矛盾。
设回答了 "2" 的兔子为蓝色。
此外,森林中还应有另外 2 只蓝色兔子的回答没有包含在数组中。
因此森林中兔子的最少数量是 5: 3 只回答的和 2 只没有回答的。
输入: answers = [10, 10, 10]
输出: 11
输入: answers = []
输出: 0
说明:
answers 的长度最大为1000。
answers[i] 是在 [0, 999] 范围内的整数。
思路:
遍历数组,按照answers[i]分组,当一个组下的数字个数和asnwers[i]+1相同时,更新总和,移除这个组。
tpis:answers[i]=0时,直接更新总和即可
代码:
class Solution {public int numRabbits(int[] answers) {if(answers.length==0){return 0;}// 1 3 4 =2+4+5// 3 3 3 4 = 3+1 int sum = 0;Map<Integer,Integer> map = new HashMap<>();for(int i=0;i<answers.length;i++){if(map.containsKey(answers[i])){map.put(answers[i],map.get(answers[i])+1);if(map.get(answers[i])==1+answers[i]){sum+=(1+answers[i]);map.remove(answers[i]);}}else{if(answers[i]==0){sum+=1;continue;}map.put(answers[i],1);}}for(Map.Entry<Integer, Integer> entry : map.entrySet()){sum+=(entry.getKey()+1);}return sum;}
}
Leetcode--781.森林中的兔子相关推荐
- LeetCode 781. 森林中的兔子(哈希+贪心)
文章目录 1. 题目 2. 解题 1. 题目 森林中,每个兔子都有颜色. 其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色. 我们将这些回答放在 answers 数组里. 返回森林 ...
- leetcode 781. 森林中的兔子(hashmap)
森林中,每个兔子都有颜色.其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色.我们将这些回答放在 answers 数组里. 返回森林中兔子的最少数量. 示例: 输入: answers ...
- leetcode每日一题—781.森林中的兔子
题目: 森林中,每个兔子都有颜色.其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色.我们将这些回答放在 answers 数组里.返回森林中兔子的最少数量. 解答: class So ...
- leetcode 781. Rabbits in Forest | 781. 森林中的兔子(Java)
题目 https://leetcode.com/problems/rabbits-in-forest/ 题解 另 answers 中的每一个元素称为 n,那么,n 最多能抵消 n+1 个同类元素. c ...
- 森林中的兔子(超详细解析)
森林中的兔子题目题解 题目 解析 题解一 题解二 题目 森林中,每个兔子都有颜色.其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色.我们将这些回答放在 answers 数组里. 返 ...
- [Swift]LeetCode781. 森林中的兔子 | Rabbits in Forest
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- 森林中的兔子,有感而抒
力扣4月4日每日一题,传送门 有感而抒 森林中,每个兔子都有颜色.其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色.我们将这些回答放在 answers 数组里. 返回森林中兔子的最 ...
- Leetcode 781 森林里的兔子(C++)
Leetcode 781 Rabbits In Forest (C++ Solution) 图论 问题描述 森林中,每个兔子都有颜色.其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜 ...
- 科研文献|根相关真菌群落反映了亚热带森林中宿主的空间共生模式
TITLE:Root-associated fungal community reflects host spatial co-occurrence patterns in a subtropical ...
最新文章
- CCNA实验:VLan间路由实验配置 (单臂路由)
- 学会使用函数式编程的程序员(第2部分)
- asp.net 中Gridview 使用总结
- 最小表示法 最大表示法
- 功能测试——Selenium自动化功能测试
- OpenWrt——Could not lock /var/lock/opkg.lock: Resource temporarily unavailable.
- KILE退出调试模式时显示Encuntered an improper argument
- NP完全性理论与近似算法
- windows下将磁盘脱机,并在我的电脑下显示
- 做 Python 代码重构,竟发现这些“潜规则”!
- GDAL C#中文路径,中文属性名称乱码问题
- [转帖]成功者的十四项心理定律
- 判定通视的计算法公式_测量学简答题(5篇范例)
- linux unip命令
- Java IO流基础
- Java文件操作——简单文件搜索优化版本Lambda优化
- NK-RTU980 USB bulk传输
- 使用jenkins流水线完成自动部署服务到K8s
- 面试表现不好时补救策略
- android 7.0 新功能介绍(Nougat)
热门文章
- 《程序员面试金典》解题目录(更新完毕)
- LeetCode 94. 二叉树的中序遍历(中序遍历)
- 聚类算法 距离矩阵_快速且不需要超参的无监督聚类方法
- j2ee和mysql怎么连接_J2EE数据库连接不再烦恼
- 小案例:搭建简易版王者荣耀英雄购买商城网页版
- 利用python自定义完整版迭代器
- Flink的异步I/O及Future和CompletableFuture
- Spring Boot 1.5.x新特性:动态修改日志级别
- 论文浅尝 | 探索将预训练语言模型用于事件抽取和事件生成
- 论文浅尝 | EARL: Joint Entity and Relation Linking for QA over KG