```
class Solution(object):
def distributeCandies(self, candies):
"""
:type candies: List[int]
:rtype: int
"""
if candies :
kinds = set(candies)
m = len(kinds) # number of kinds available
n = len(candies) // 2 # number of candies to be given to sister
if m <= n:
# if number of candies that sister can have exceed number of kinds
# she can have all possible kinds of candies
return m
else:
# if there're are more kinds than number of candies sister can have
# then she can have at most n kinds of candies
return n
return 0
```