./ruby/quiz/results.txt

download original
#!/usr/bin/ruby

members,limit = ARGV.map{|x|x.to_i}

t1=Time.now

#found = (0...members).inject({}){|h,x|h[x]=false;h}
found={}
#members.times {
#  begin n=rand(limit) end while found[n]
#  found[n]=1
#}
while found.size<members
  found[rand(limit)]=1
end

t2=Time.now
sorted=found.keys.sort
t3=Time.now

puts sorted
t4=Time.now


warn "calc: #{t2-t1}, sort: #{t3-t2}, output: #{t4-t3}"


olaf@tack:~/doc/mydocs/ruby/quiz$ time ./sample 500000 100000000 >/dev/null 
calc: 1.711008, sort: 0.539161, output: 10.19322

real    0m12.456s
user    0m12.420s
sys     0m0.040s
olaf@tack:~/doc/mydocs/ruby/quiz$ 
olaf@tack:~/doc/mydocs/ruby/quiz$ 
olaf@tack:~/doc/mydocs/ruby/quiz$ time ./sample 1000000 200000000 >/dev/null 
calc: 3.684069, sort: 1.125714, output: 37.525631

real    0m42.349s
user    0m41.870s
sys     0m0.220s
olaf@tack:~/doc/mydocs/ruby/quiz$ 
olaf@tack:~/doc/mydocs/ruby/quiz$ 
olaf@tack:~/doc/mydocs/ruby/quiz$ 
olaf@tack:~/doc/mydocs/ruby/quiz$ 
olaf@tack:~/doc/mydocs/ruby/quiz$ time ./sample 2000000 400000000 >/dev/null 
calc: 7.922936, sort: 2.368247, output: 148.857243

real    2m39.168s
user    2m36.870s
sys     0m0.720s
olaf@tack:~/doc/mydocs/ruby/quiz$ 








olaf@tack:~/doc/mydocs/ruby/quiz$ ./itest.rb </tmp/big_sample_joost.txt 
0.3688032
olaf@tack:~/doc/mydocs/ruby/quiz$ ./itest.rb </tmp/big_sample.txt 
bash: /tmp/big_sample.txt: No such file or directory
olaf@tack:~/doc/mydocs/ruby/quiz$ ./itest.rb <big_sample.txt 
0.368865
olaf@tack:~/doc/mydocs/ruby/quiz$ 
  
back to quiz

(C) 1998-2017 Olaf Klischat <olaf.klischat@gmail.com>