12周刷题大作战

由于第一天刷题那天是个周五,所以第一周有了8天。赶了一天飞机,由于时差,17号还在。

mod

mod %

LeetCode - 781 - (0 Easy, 1 Medium, 0 Hard)

781 - Rabbits in Forest - Medium

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class  {
public int numRabbits(int[] answers) {
if(answers.length == 0){
return 0;
}

Map<Integer, Integer> map = new HashMap<>();
for(int i = 0; i < answers.length; i++){
if(map.containsKey(answers[i]+1)){
map.put(answers[i]+1, map.get(answers[i]+1)+1);
}else{
map.put(answers[i]+1, 1);
}
}

int result = 0;
int key = 0;
int value = 0;
for(Map.Entry<Integer, Integer> entry : map.entrySet()){
key = entry.getKey();
value = entry.getValue();
if (value%key != 0){
result += key*(value/key+1);
}else{
result += value;
}
}
return result;
}
}