僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
ランダム贈与シミュレーション
の
真似ごとをしてみた。
要素の値がすべて100、要素の数が100のリストを作り、
そのすべてから1をひき、どれかに1を足すサイクルを
int(argv[1])回繰り返すようにする。
ここでは最大と最小のみでやめておいた。
$ python3 rand_giving.py3 1 103 99 $ python3 rand_giving.py3 10 110 94 $ python3 rand_giving.py3 100 123 77 $ python3 rand_giving.py3 1000 168 28 $ python3 rand_giving.py3 10000 358 -145
同じ回数を複数繰り返すと、ある程度違う結果にはなった。が、 繰り返し回数が多ければ多いほど差が開く傾向は変らないようだ。
相手を選ぶ計算のたびに乱数の種を蒔くのは、流石に1000回にもなると
重く感じられたので、繰り返し回数に変えた。
それでも、10000回の処理に4秒ほどかかった。
相手を選ぶ時に出し引きする値も変えるようにしてみた。
ついでに差異も表示させる。
argv[2]が"0"なら、出し引きは1固定とする。
大体想像通り。差異が急速に拡大する結果になった。
$ python3 rand_giving.py3 100 0 124 76 48 $ python3 rand_giving.py3 100 2 137 64 73 $ python3 rand_giving.py3 100 4 167 30 137
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。