PA3: Counting


This third python programming assignment, PA3, is about counting. You will write two functions partitions(n,k) that counts in how many ways n distinct elements can be grouped into k (non empty) partitions, and mkCh(a,c) that counts in how many ways amount a can be paid with coins {1,5,10,25}. Both algorithms are discussed in lecture 15: counting.

counting.txt contains some skeleton code. Download it and rename it counting.py. A correct implementation of counting:

   python3 counting.py 3 2
  
produces
  n: 3 k: 2 partitions: 3
  amount: 32 coins: [1, 5, 10, 25] ways: 18
  

Program Submission

Submit your assignment using the checkin system. Submit your source code as a single file named counting.py.