namespace _77._Combinations; public class Solution { public IList> Combine(int n, int k) { List> res = new List>(); Recursion(res, new List(), 1, n, k); return res; } private void Recursion(List> result, List cur, int minNum, int maxNum, int count) { if (cur.Count == count) { result.Add(cur.ToList()); return; } for (int toAdd = minNum; toAdd <= maxNum; toAdd++) { cur.Add(toAdd); Recursion(result, cur, toAdd + 1, maxNum, count); cur.RemoveAt(cur.Count-1); } } }