JB TAK FODEGA NHI .... TB TK CHODEGA NHI .... (MAANG)
                    
                    
                     
                  
                  
                  L8 Combination Sum I
                    Given an array of distinct integers candidates and a
                    target integer target, return a list of all
                    unique combinations of candidates where the chosen
                    numbers sum to target. You may return the combinations in
                    any order. 
                    The same number may be chosen from candidates an
                    unlimited number of times. Two combinations are
                    unique if the frequency of at least one of the chosen
                    numbers is different. 
                    The test cases are generated such that the number of unique
                    combinations that sum up to target is less than 150
                    combinations for the given input. 
                  
                    Example 1:
                    
                    Input: candidates = [2,3,6,7], target = 7
                    Output: [[2,2,3],[7]]
                    Explanation: 
                    2 and 3 are candidates, and 2 + 2 + 3 = 7. Note that 2 can
                    be used multiple times. 7 is a candidate, and 7 = 7. These
                    are the only two combinations.
                    
                    Example 2:
                    
                    Input: candidates = [2,3,5], target = 8 
                    Output: [[2,2,2,2],[2,3,3],[3,5]] 
                    Example 3: 
                    Input: candidates = [2], target = 1 Output: []
                    
                    
                    Constraints: 
                    - 1 <= candidates.length <= 30 
                    - 2 <= candidates[i] <= 40 
                    - All elements of candidates are distinct. 
                    - 1 <= target <= 40 
                  
Notes
Note: Zoom for Better Understanding
How to think recursively? Whenever the problem is related to picking up elements from an array to form a combination, start thinking about the “pick and non-pick” approach.
Defining recursive function: 
                  Diagrammatic representation for Example 1:
 
                  Code Zone!
Before Loking the Code... 
 Try by Your Self ...
 
                       
                      Sb Mai He Kru ...
Khud Bhi Kr le Khuch ..... Nalayk














