Let us consider sets of positive integers less than or equal to n. Note that all elements of a set are different. Also note that the order of elements doesn't matter, that is, both {3, 5, 9} and {5, 9, 3} mean the same set.  Specifying the number of set elements and their sum to be k and s, respectively, sets satisfying the conditions are limited. When n = 9, k = 3 and s = 23, {6, 8, 9} is the only such set. There may be more than one such set, in general, however. When n = 9, k = 3 and s = 22, both {5, 8, 9} and {6, 7, 9} are possible.  You have to write a program that calculates the number of the sets that satisfy the given conditions.
import itertools

while True:
  n, k, s = map(int, input().split())
  if n + k + s == 0:
    break

  a = itertools.combinations(range(n + 1), k)

  ans = 0

  for e in a:
    if sum(e) != s:
      continue
    ans += 1

  print(ans)  
import itertools

while True:
  n, k, s = map(int, input().split())
  if n + k + s == 0:
    break

  a = itertools.combinations(range(1, n + 1), k)

  ans = 0

  for e in a:
    if sum(e) != s:
      continue
    ans += 1

  print(ans)  