CombinatorialCase000/100

From NARS2000
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

M Pigeons into N holes

Cases 000 and 100 are both trivial.

  • M unlabeled (0) or labeled (1) balls into N unlabeled boxes (0), at most one per box (0)
  • Not ⎕IO-sensitive
  • Counted result is a Boolean scalar
  • Generated result is a Boolean matrix.

The count for this function is M≤N.

If M>N, then there is no answer, or more accurately, the result is an empty matrix of shape 0 N. If M≤N, then the result is a one-row matrix with M leading 1s and the rest 0s. Combining these two cases yields a result of ((M≤N) N)⍴N↑M⍴1.

For example:

If we have 3 unlabeled balls (●●●) and 5 unlabeled boxes with at most one ball per box, there is only 1 (↔ 3≤5) way to meet these criteria:

 
 
 
 
   
 
   

as well as

 
 
 
   
 
   
 

The diagram above corresponds to

      000 1‼3 5
1 1 1 0 0

      ⍝ M pigeons into N holes
      ⍝ Unlabeled balls & boxes, ≤1 # Balls per Box
      000 1‼4 5
1 1 1 1 0