# TwoSample 
# Fig. 32.1 

import math

def q(n, k, s):
  if (k == 0) and (s >= 0):
    return 1
  elif (n < k) or (s < 0):
    return 0
  else:
    return q(n-1, k, s) + q(n-1, k-1, s-d[n-1])

# obtained from readPres2.py
shorts = [4, 9, 14, 15, 27]
talls =  [0, 1, 1, 4, 6, 11, 13, 16, 16, 17, 20, 
21, 22, 23, 23, 24, 26, 27, 27, 28, 29, 30, 30, 
31, 31, 34, 34, 37, 37, 41]
d = shorts + talls
n = len(d)
k = len(shorts)
s = sum(shorts)
print(f"n={n}, k={k}, s={s}")
count = q(n,k,s)
tot = math.comb(35, 5)
print(f"P = {(count/tot):.2%}")
