Wydaje mi się, że przy dużych bliskich sobie liczbach po prostu zmienna wynik może przekraczać wartość maksymalną typu unsigned long long, mimo że wynik nie będzie duży, bo w 26 linijce na początku mnożysz przez duże liczby (n-j) a dzielisz przez małe (j+1) i rozwiązać ten problem możesz w ten sposób, że dla dużych k zamiast wyznaczać ilość k elementowych podzbiorów wyznacz ilość n-k elementowych podzbiorów (jeśli n-k < k) i przy okazji pomyśl, dlaczego te dwie liczby są sobie równe.