csum.sc 348 B

12345678910111213
  1. def num_paths(startsum:Int,lastcoin:Int):Int = {
  2. if (startsum == 250) {return 1}
  3. var paths = 0;
  4. for (coin <- List(1,2,5,10,20,50,100,200)) {
  5. if ((lastcoin>=coin) && (startsum<=(250-coin))) {
  6. paths += num_paths(startsum+coin,coin)
  7. }
  8. }
  9. return paths
  10. }
  11. println(num_paths(args(0).toInt, args(1).toInt));