miscelleaneous

Random Lean experiments

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
import Std

def Main := do
  let A := Array.replicate 10 0 |>.append (Array.replicate 8 1) |>.append (Array.replicate 6 2)
  let N := A.size
  let mut cnt := 0
  for ha : a in [:N] do
    for hb : b in [a + 1:N] do
      for hc : c in [b + 1:N] do
        for hd : d in [c + 1:N] do
          for he : e in [d + 1:N] do
            if ({A[a], A[b], A[c], A[d], A[e]} : Std.HashSet Nat).size = 3 then
              cnt := cnt + 1
  IO.println cnt

#eval Main