Array Greedy Hash Table Math 781. Rabbits in Forest¶ Time: $O(n)$ Space: $O(1000) = O(1)$ C++JavaPython 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15class Solution { public: int numRabbits(vector<int>& answers) { int ans = 0; vector<int> count(1000); for (const int answer : answers) { if (count[answer] % (answer + 1) == 0) ans += answer + 1; ++count[answer]; } return ans; } }; 1 2 3 4 5 6 7 8 9 10 11 12 13 14class Solution { public int numRabbits(int[] answers) { int ans = 0; int[] count = new int[1000]; for (final int answer : answers) { if (count[answer] % (answer + 1) == 0) ans += answer + 1; ++count[answer]; } return ans; } } 1 2 3 4 5 6 7 8 9 10 11class Solution: def numRabbits(self, answers: list[int]) -> int: ans = 0 count = collections.Counter() for answer in answers: if count[answer] % (answer + 1) == 0: ans += answer + 1 count[answer] += 1 return ans Was this page helpful? Thanks for your feedback! Thanks for your feedback! Help us improve this page by using our feedback form.