Example 1:
Input: answers = [1,1,2] Output: 5 Explanation: The two rabbits that answered "1" could both be the same color, say red. The rabbit that answered "2" can't be red or the answers would be inconsistent. Say the rabbit that answered "2" was blue. Then there should be 2 other blue rabbits in the forest that didn't answer into the array. The smallest possible number of rabbits in the forest is therefore 5: 3 that answered plus 2 that didn't.
package pep.Day67;
import java.util.HashMap;
public class LeetCode_781_Rabbits_in_Forest {
public static int numRabbits(int[] answers) {
HashMap<Integer, Integer> hm = new HashMap<>();
for (int i : answers) {
hm.put(i, hm.getOrDefault(i, 0) + 1);
}
int ans = 0;
for (int i : hm.keySet()) {
ans += (Math.ceil(hm.get(i) / (i + 1.0))) * (i + 1);
}
return ans;
}
}



No comments:
Post a Comment