ロト7が始まったそうなので、なにも考えずランダムに7個の数字を求めるのをやってみた。
「ロト7(ロトセブン)」は、1~37の37個の数字の中から、異なる7個の数字を選んで購入する、「数字選択式宝くじ」です。2013年4月より全国で発売されました。1等の当せん金は最高4億円(理論値)。ロト6と同じく、当せん金の繰り越しが行われる「キャリーオーバー制」を採用しています。キャリーオーバーが発生した場合、1等の当せん金は最高8億円となります。価格は1口300円です。1年中、原則毎日、午前8時から午後8時まで(年末年始を除く)、抽せん日(金曜日)は午後6時30分まで、数字選択式宝くじ売り場で購入することができます。
ロト6は1~43なのでrangeは減ったけど数は増えたってことっぽい。
確率はロト6が1/6,096,454に対し、ロト7は1/10,295,472なので約1.6倍になってる。
それより、ロト6は1口200円だったので1シート買って千円だったけどロト7は1口300円なので1シート買うと1500円になるため気軽に買えなくなる。
というわけでrubyでこれをなにも考えずランダムで求めると1行で済んだ。すごい。
$ irb irb(main):001:0> Array(1..37).shuffle.first(7).sort => [1, 4, 12, 14, 16, 27, 29] irb(main):002:0> Array(1..37).shuffle.first(7).sort => [2, 11, 18, 20, 26, 29, 34] irb(main):003:0> Array(1..37).shuffle.first(7).sort => [3, 8, 16, 18, 26, 28, 30] irb(main):004:0> Array(1..37).shuffle.first(7).sort => [2, 19, 25, 28, 32, 33, 37] irb(main):005:0> Array(1..37).shuffle.first(7).sort => [2, 9, 20, 26, 27, 29, 33] irb(main):006:0>
この1行で4億当てて伝説になりたい。
追記:
id:nekovaさんにもっと短いの教えてもらった。
Array(1..37).sample(7).sort
短くてシンプル。
これで伝説にまた近づいた気がする。