Skip to content

Latest commit

 

History

History
31 lines (27 loc) · 1.05 KB

2928_distribute_candies_among_children_one.md

File metadata and controls

31 lines (27 loc) · 1.05 KB

You are given two positive integers n and limit.

Return the total number of ways to distribute n candies among 3 children such that no child gets more than limit candies.

Example 1:

Input: n = 5, limit = 2
Output: 3
Explanation: There are 3 ways to distribute 5 candies such that no child gets more than 2 candies: (1, 2, 2), (2, 1, 2) and (2, 2, 1).

Example 2:

Input: n = 3, limit = 3
Output: 10
Explanation: There are 10 ways to distribute 3 candies such that no child gets more than 3 candies: (0, 0, 3), (0, 1, 2), (0, 2, 1), (0, 3, 0), (1, 0, 2), (1, 1, 1), (1, 2, 0), (2, 0, 1), (2, 1, 0) and (3, 0, 0).

Solution

class Solution:
    def distributeCandies(self, n: int, limit: int) -> int:
        cnt = 0
        for i in range(limit +1 ):
            for j in range(limit + 1):
                for k in range(limit + 1):
                    if i + j + k == n:
                        cnt += 1
        return cnt