25 lines
624 B
Plaintext
25 lines
624 B
Plaintext
import Utils
|
|
|
|
procedure main(A)
|
|
freq := table(0)
|
|
every 1 to (\A[2] | 100000)\1 do {
|
|
s_of_n := s_of_n_creator(\A[1] | 3)
|
|
every sample := s_of_n(0 to 9)
|
|
every freq[!sample] +:= 1
|
|
}
|
|
every write(i := 0 to 9,": ",right(freq[i],6))
|
|
end
|
|
|
|
procedure s_of_n_creator(n)
|
|
items := []
|
|
itemCnt := 0.0
|
|
return makeProc {
|
|
repeat {
|
|
item := (items@&source)[1]
|
|
itemCnt +:= 1
|
|
if *items < n then put(items, item)
|
|
else if ?0 < (n/itemCnt) then ?items := item
|
|
}
|
|
}
|
|
end
|