1 2 3 4 5 6 7 8 9 10 11 | def count(n) ar = (1..n).map { rand } m = ar.inject(0, :+) / n.to_f d = ar.inject(0) { |e| (e - m) ** 2 } / (n - 1) [m, d] end m, d = count(gets.to_i) puts "average: #{m}" puts "dispersion: #{d}" |
ZGVmIGNvdW50KG4pCiAgYXIgPSAoMS4ubikubWFwIHsgcmFuZCB9CiAgbSA9IGFyLmluamVjdCgwLCA6KykgLyBuLnRvX2YKICBkID0gYXIuaW5qZWN0KDApIHsgfGV8IChlIC0gbSkgKiogMiB9IC8gKG4gLSAxKQogIFttLCBkXQplbmQKCm0sIGQgPSBjb3VudChnZXRzLnRvX2kpCgpwdXRzICJhdmVyYWdlOiAje219IgpwdXRzICJkaXNwZXJzaW9uOiAje2R9Ig==
-
upload with new input
-
result: Success time: 0s memory: 4760 kB returned value: 0
1000
average: 0.4915686865941559 dispersion: 0.00013055541744211535
-
result: Success time: 0s memory: 4760 kB returned value: 0
average: NaN dispersion: 0



