-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathdistribute_candies_to_people.cpp
41 lines (38 loc) · 1.11 KB
/
distribute_candies_to_people.cpp
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
31
32
33
34
35
36
37
38
39
40
41
class Solution {
public:
vector<int> distributeCandies(int candies, int num_people) {
vector<int> result(num_people, 0);
int cc = 1;
int index = 0;
while(candies) {
result[index++] += cc;
candies -= cc++;
if(index == num_people) index = 0;
if(cc > candies) cc = candies;
}
return result;
}
};
# #mysolution
# class Solution:
# def distributeCandies(self, candies: int, num_people: int) -> List[int]:
# res = [0] * num_people
# i = 0
# while candies > 0:
# if i <= (num_people-1):
# res[i] = min(candies, i+1)
# else:
# res[i%num_people] += min(candies, i+1)
# candies -= i+1
# i+=1
# return res
# #better
# class Solution:
# def distributeCandies(self, candies: int, num_people: int) -> List[int]:
# res = [0] * num_people
# i = 0
# while candies > 0:
# res[i%num_people] += min(candies, i+1)
# candies -= i+1
# i+=1
# return res