トップページ⇒tech
1001コメント323KB

C#, C♯, C#相談室 Part86 [転載禁止]©5ch.io

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2014/12/27(土) 00:37:39.56ID:CxSn36ZM
■Visual Studio 2013 Express(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part85
http://peace.2ch.net/test/read.cgi/tech/1412298752/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
0153デフォルトの名無しさん2015/01/06(火) 03:41:49.07ID:lXgSl7Ko
>>152
それなら、List<Interface>で良いんじゃ。
0154デフォルトの名無しさん2015/01/06(火) 06:50:09.33ID:Gue0XuXV
>>153
それだと入れられなくないか?
0155デフォルトの名無しさん2015/01/06(火) 10:00:22.93ID:tMvZ7xD7
>>135
これ結構早い段階というか最初から?偏りがあるんじゃないかって疑ってたみたいだけど、そういうのってなんとなく?感覚的に?あるいは論理的に?分かるもんなの?
なんにしても、なんとなく適当にやると簡単に偏りとか出てしまうんだな。
0156デフォルトの名無しさん2015/01/06(火) 10:23:55.04ID:IQcBbcwX
経験的に、だと思う
0157デフォルトの名無しさん2015/01/06(火) 12:36:40.69ID:M5IoxY0a
・Randomは重複する
・OrderByは安定ソートである
この2点さえ知ってれば明らかでしょ
安定ソートでないアルゴリズムでも重複キーの順序は大抵何らかの単純な法則に従うから偏るだろうね
>>136はNext(i, array.Length)に変えたら一様になるよ
インプレースだから分かりらさ
0158デフォルトの名無しさん2015/01/06(火) 12:38:49.14ID:M5IoxY0a
すまんミス
インプレースだから分かりにくいけど、直感的には袋に入れた玉を無作為に取り出して並べるのと等価
0159デフォルトの名無しさん2015/01/06(火) 12:52:09.52ID:RdEZdnsU
rnd.NextDouble使ってれば重複は無視できるレベルになると思うけどね
0160デフォルトの名無しさん2015/01/06(火) 13:05:59.44ID:IQcBbcwX
理解して無視してるならいいよ
理解せずに無視してるとなるとそれは
0161デフォルトの名無しさん2015/01/06(火) 13:10:43.51ID:9BIJAN3Y
>>158
等価に思えんけど。
それではインデックスが若い物ほどSwapされる頻度の平均値が上がってしまう。
0162デフォルトの名無しさん2015/01/06(火) 13:13:38.84ID:IQcBbcwX
昨日とりあえずFisherYates使えって言ったじゃん
0163デフォルトの名無しさん2015/01/06(火) 14:53:07.88ID:nsrYhV9A
>>157
>Next(i, array.Length)に変えたら一様になるよ

全く意味不明だな
元がどう一様ではないのか説明してみろよ
0164デフォルトの名無しさん2015/01/06(火) 14:59:54.65ID:3sTwSoye
>>136に>>157の修正したものがFisherYatesと同じでしょ
でそれは>>158の解釈通りでしょ
0165デフォルトの名無しさん2015/01/06(火) 15:01:16.62ID:3sTwSoye
あ、元が一様かそうでないかは自分にはわからん
0166デフォルトの名無しさん2015/01/06(火) 15:02:50.44ID:9BIJAN3Y
だから初期状態で若いインデックスの物ほどswapされる頻度が高くなるんだから>>158の説明は間違い
0167デフォルトの名無しさん2015/01/06(火) 15:07:35.47ID:A5fXnf9K
スワップと考えるから間違える。
やってることはスワップなんだが、論理的には袋の中から一つずつランダムに取り出すのと同じになるんだよ、>>158のやり方で。
よく考えれば分かる。
最初のやり方は一様にならない。
0168デフォルトの名無しさん2015/01/06(火) 15:09:36.32ID:3sTwSoye
>>166
どういうこと?157のように変えたらarray[0]は初回のみしかswapされないと思うんだが
0169デフォルトの名無しさん2015/01/06(火) 15:09:40.81ID:nsrYhV9A
そもそもランダムならばスワップが1回でも2回でもランダムな値であることには変わりないはずだからそこは問題じゃないだろう

元が一様ならばNext(i, array.Length)にするのは無駄な処理が増えるしシンプルさを損なうから無粋だろう
0170デフォルトの名無しさん2015/01/06(火) 15:10:38.19ID:A5fXnf9K
違う、>>157のやり方だった。

スワップする事で、袋から選んだボールを並べた上で、選ばなかったボールを袋に返してることになるんだよ。
ちょっとわかりにくいけどよく考えてみれば分かるはず。
0171デフォルトの名無しさん2015/01/06(火) 15:12:21.30ID:A5fXnf9K
>>168
スワップじゃなくて、袋から一つずつ取り出してるんだ。
一回取り出した奴を含めて選びなおしてたらおかしくなるだろ?
0172デフォルトの名無しさん2015/01/06(火) 15:17:05.25ID:nsrYhV9A
>>170
ボールを袋に返すっていうのがまず意味不明だし
袋に返すとどう一様じゃなくなるのかも分からんな
0173デフォルトの名無しさん2015/01/06(火) 15:17:15.48ID:9BIJAN3Y
>>170
だから、初期状態の位置によって何度も袋に戻される玉とそうでない玉が出るんだから全然等価じゃありません。
0174デフォルトの名無しさん2015/01/06(火) 15:21:19.22ID:9BIJAN3Y
例えばarray.Length == 5の時、初期状態でarray[0]に入ってる値は
Swap(0, 1)→Swap(1, 2)→Swap(2, 3)→Swap(3, 4)
と最大4回swapされる可能性があるが、初期状態でarray[4]に入ってる値は
最大でも1回だけ。
0175デフォルトの名無しさん2015/01/06(火) 15:22:15.54ID:nsrYhV9A
現実のボールをランダムに並べるには袋から取り出していく事が必要になるが
現実のボールを袋から取り出してるわけではないからそのメタファーに従う必要はない
別にボールを取り出すようにやらないと配列が一様なランダム性を得られないわけではないし

さらにいえばボールを袋に返してはいけないのは並べ終わらなくなるからであって一様性とは関係ないはずだ
0176デフォルトの名無しさん2015/01/06(火) 15:27:31.97ID:A5fXnf9K
>>136のやり方がなぜだめか。
例えばボール3つの場合、ボールの並び方は
123 132 213 231 312 321
の6パターンになる。
一方、スワップの組み合わせ数は3×3×3で27パターン。
つまり6パターンで割り切れない。
ということは、どういうことになるかというと、パターン数に偏りがあるって事になる。
分かる?
0177デフォルトの名無しさん2015/01/06(火) 15:30:16.08ID:A5fXnf9K
>>175
違うよ。
プログラムの動作をメタファーで表現してるのではなくて、元々の袋から一つずつ取り出して並べる操作を、プログラムでシンプルに実装するとこうなるんだ。
論理的に等価なんだよ。
0178デフォルトの名無しさん2015/01/06(火) 15:31:51.57ID:9BIJAN3Y
言ってて無理があると思わないんだ...
0179デフォルトの名無しさん2015/01/06(火) 15:34:02.23ID:A5fXnf9K
>>176
一方で、>>157のやり方だと、スワップの組み合わせ数は
3×2×1で6パターン
つまりボールの並び順のパターン数と同じになる。
袋から一つずつ取り出して並べるのと等価になるようにプログラムしてるんだから当然だけど。
0180デフォルトの名無しさん2015/01/06(火) 15:35:29.20ID:nsrYhV9A
>>176
まずスワップの組み合わせ数とボールの並べ方の数に何の関係があるんだよ
関係無いものを並べてみただけのただの詭弁だ

ランダム性が一様であるかどうかは「配列のすべてのインデックスで、
全ての項目から均等な確率で一つが選ばれて割り当てられているかどうか」で決まる
だから>>136は全く正しいアルゴリズムである
0181デフォルトの名無しさん2015/01/06(火) 15:40:01.80ID:A5fXnf9K
最初の配列は全部袋の中のイメージな。
まず一回目のループで3つのうちどれか選ぶよな。
それが一つ目のボールだ。
配列の1つめと、選んだボールをスワップする。
配列の1つは選んだボールになり、2つ目と3つ目は袋に残ったボールになる。

2回目のループで配列の2つ目と3つ目どちらかを選ぶ。
つまり、袋に残った2つのどちらかを選ぶ。
配列の2つ目と入れ替える。
配列の2つめは、袋から2回目に選んだボールとなり、配列の3つ目には選ばれなかったボールが残る。

こういう事だよ。
0182デフォルトの名無しさん2015/01/06(火) 15:43:07.32ID:A5fXnf9K
>>180
さすがに
確率を勉強し直せとしか言えん。

スワップのパターン数=出来上がる配列の最終的なパターンの総数だろうが。
その総数が、並び方のパターン数の倍数にならないなら、並び方によって出現するパターン数が替わってしまう=一様になってない。
何で分からん?
0183デフォルトの名無しさん2015/01/06(火) 15:43:43.21ID:IQcBbcwX
あ、ご高説終わりましたか?
0184デフォルトの名無しさん2015/01/06(火) 15:46:15.23ID:3sTwSoye
>>136を10000回やってみると確かに偏った(初期位置が後ろのものほど前に来にくい)
>>157だと偏ってないように見えた

ちょっと確率の計算を勉強しなおしてくる
0185デフォルトの名無しさん2015/01/06(火) 15:51:38.69ID:IQcBbcwX
約一名様は中学校からやり直しね
0186デフォルトの名無しさん2015/01/06(火) 15:57:49.21ID:3sTwSoye
え、一人だけ
0187デフォルトの名無しさん2015/01/06(火) 16:04:24.60ID:3sTwSoye
結局>>164の認識で合ってるという理解になったんだが
合ってるよね?
0188デフォルトの名無しさん2015/01/06(火) 16:04:38.57ID:9BIJAN3Y
a[i]とa[j](i≦j≦n, where n = a.Length - 1)を交換する行為は、確かに
a[i]からa[n]までの部分配列を袋とみなして玉を取り出した後、袋とみなす部分配列の始点を
インクリメントするのと同じだから、やっぱり>>157-158が正しいなw

すまんかった。
0189デフォルトの名無しさん2015/01/06(火) 16:22:27.74ID:W2F4pWSu
こういう時にideone使えよ
俺はやらないけどな
0190デフォルトの名無しさん2015/01/06(火) 16:41:32.07ID:A5fXnf9K
>>187
合ってる。
0191デフォルトの名無しさん2015/01/06(火) 16:41:49.09ID:3sTwSoye
貼ってみたよ
http://ideone.com/Uic7zf
0192デフォルトの名無しさん2015/01/06(火) 18:03:02.39ID:GG94B219
アルゴリズム的に一様になるとしても、そもそもの乱数に偏りがあったら何にもならんのだが
実際どの程度偏ってるんだろ
0193デフォルトの名無しさん2015/01/06(火) 18:17:27.51ID:fNWhMhIP
>>192
CのデフォRand()がアレなのは常識だけど、C#デフォのはどうなの?
メルセンヌ・ツイスタとかなら文句はないんだが
0194デフォルトの名無しさん2015/01/06(火) 18:21:06.20ID:W2F4pWSu
クヌースの減算法じゃなかったか
0195デフォルトの名無しさん2015/01/06(火) 18:27:12.50ID:pqQorvDT
>>194
うん。
0196デフォルトの名無しさん2015/01/06(火) 18:29:24.17ID:pqQorvDT
>>160,180
>>184
ジワジワくるw
息してないけど。
0197デフォルトの名無しさん2015/01/06(火) 18:30:35.79ID:pqQorvDT
>>160じゃなくて>>169だた。
0198デフォルトの名無しさん2015/01/06(火) 18:32:22.80ID:nsrYhV9A
>>182
>スワップのパターン数=出来上がる配列の最終的なパターンの総数

何言ってんだ一体
たとえば同じ箇所を二回スワップすれば同じパターンに戻るんだからスワップの総数は最終的なパターンの総数になんかなるわけないだろう

たしかに俺が間違っていたことは間違いないが
これが詭弁なことにも違いはない

>>191の結果を見ると
結局最初に0番にスワップされた奴はもう戻って来られない可能性が高いが
0は自由な位置に移動した後もう一度必ず移動するチャンスがあるので
その分移動しやすいってことか
なので自分の数字より若い位置に移動したらもう移動しない可能性が高いので
自分の数字より前の濃度が高くなるのか
0199デフォルトの名無しさん2015/01/06(火) 18:42:43.31ID:pqQorvDT
>>198
だから確率を勉強しし直すといいよ。
同様に確からしい起こりうる事象のすべての組み合わせのうち、
ある事象が起こる回数の割合が、その事象の起こる確率だ。

同様に確からしい、起こり得るすべての事象の総数がここでは27パターンなわけ。
この27パターンは同じ確率で発生するわけ。
並び方のパターンは6で、総事象が27ってことは、確実に多い並びと少ない並びがあるわけ。
27パターンは同じ確率で発生するんだから、少ない並びのパターンが発生する確率は少なくなるわけ。

確率を分かってたら総パターンの意味なんてすぐ分かるけど、ちゃんと理解してないからピンと来ないんだな。
0200デフォルトの名無しさん2015/01/06(火) 18:45:28.69ID:pqQorvDT
>>198
詭弁でもなんでもなくて、確率の話ではふつうの言い方だよ。

理解できないおまえがアホなだけ。
結局お前の言ってたこと全部間違ってるじゃんw
0201デフォルトの名無しさん2015/01/06(火) 18:52:03.53ID:W2F4pWSu
そろそろ面会時間終わりですよー
0202デフォルトの名無しさん2015/01/06(火) 19:15:40.97ID:nsrYhV9A
>>200
現象を理解してないから詭弁を使うわけ
俺は現象を理解したから無意味な詭弁で妙な説明をする必要はなくなったの
そしてお前は煽ってるだけで最初からなんにも理解できてないわけ
確率の上っ面を舐めて変な解説に屋上屋を重ねただけ 現象には全く届いていない
0203デフォルトの名無しさん2015/01/06(火) 19:18:01.57ID:W2F4pWSu
そんなハッスルしなくても
あと5時間もあるのよ?
0204デフォルトの名無しさん2015/01/06(火) 19:59:29.97ID:d8xiUFfP
>>202
おまえは何を言ってるんだ…
0205デフォルトの名無しさん2015/01/06(火) 20:06:27.17ID:Q7R46vB5
言葉ではなく心で現象を理解できたとかそんなん
0206デフォルトの名無しさん2015/01/06(火) 20:10:09.17ID:d8xiUFfP
もう少しだけ正確な言葉でいうなら、>>136は、根元事象が27で、表に出てくる、結果の並び順は6事象。
27の根元事象は、結果としてこの6事象はのいずれかに対応している。
偏りがないためには、結果の6事象が同じ確率で発生しなければならない。
しかし、根元事象が27なので、結果の6事象は均等に発生せず、6事象の発生確率は確実に異なる。

だから>>136は絶対に偏りが発生する。
それだけの話で、確率としては当たり前の話。
理解できない奴がアホ。
0207デフォルトの名無しさん2015/01/06(火) 20:13:24.83ID:d8xiUFfP
確率の上っ面も何も、確率の入門レベル、超基礎レベルで分かる話だ。
0208デフォルトの名無しさん2015/01/06(火) 20:20:40.77ID:Q7R46vB5
2chでよかったな
これがidentifyのあるコミュニティだったらユーザー封印レベルだった
0209デフォルトの名無しさん2015/01/06(火) 21:11:12.98ID:qlHRI5QU
>>206
つまりこういうことか。
https://ideone.com/crwsk4
0210デフォルトの名無しさん2015/01/06(火) 21:24:47.79ID:MYBQVLqU
3以上の整数nについてn^nがn!で割り切れないことって一般に証明できるの?
0211デフォルトの名無しさん2015/01/06(火) 21:36:10.21ID:O9PzdG7T
板違い
単純に大小比較で終わりそうな気もするがw
0212デフォルトの名無しさん2015/01/06(火) 21:46:17.93ID:Z/uJ2lW6
>>210
階乗って事は、n以下の前自然数が因数として含まれてるわけだ。
割り切れる訳ないよね?
0213 ◆QZaw55cn4c 2015/01/06(火) 22:05:21.43ID:3D6Su9d8
>>210
証明できる。

準備:隣合う二つの整数は互いに素
証明:a, b, が d で割り切れるなら、差 a - b も d で割り切れる。(∵a = q1・d, b = q2・d とおくと a - b = d(q1 - q2))
a - b = 1 ならば、a, b, ともに割ることのできる 1より大きい整数は存在しない、もしあったら、a - b = 1 をわることができることになり矛盾。

>>210 の証明
素因数分解は一通りであることを仮定する(これは実はあたりまえじゃない)
n を素因数分解すると p1〜p(n) の m 種類の素数で構成されていたとする。このとき、 n^n も m 種類の素数で構成される。
ここで n >= p1・p2・...・p(n) 、そして、p1・p2・... p(n) とp1・p2・... p(n) - 1 は互いに素
すなわち n! を素因数分解すると p1, p2, ... p(n) のどれとも異なる素数を持つ
ゆえに、n^n は n! で割り切れない Q.E.D
0214デフォルトの名無しさん2015/01/06(火) 22:23:51.73ID:qlHRI5QU
>>213
n >= p1・p2・...・p(n)
じゃなくて、
n = p1・p2・...・p(m)
じゃないの?
0215デフォルトの名無しさん2015/01/06(火) 22:28:02.85ID:uMZjRgvb
ここって高校数学のスレだっけ
0216デフォルトの名無しさん2015/01/06(火) 22:30:35.81ID:nsrYhV9A
何ひとつ現象を説明できないピントのズレた話を繰り返して分かったような気分に浸るだけならともかく
C#もプログラムも一切関わりのないことをプログラム板のC#スレにズルズル書き込んでるんじゃない
0217デフォルトの名無しさん2015/01/06(火) 22:39:13.30ID:Z/uJ2lW6
>>216
とっとと失せろよ
0218デフォルトの名無しさん2015/01/06(火) 22:47:05.72ID:3D6Su9d8
>>214
ああ、m と n の使い分けがごちゃごちゃだ‥てきとーに読み替えて

>>216
ごめん
0219デフォルトの名無しさん2015/01/06(火) 22:55:20.05ID:3sTwSoye
>>216
自分も見直したけど、あなたも確率の考え方は見直しといた方が良いよ
たぶん何か勘違いしてる
0220デフォルトの名無しさん2015/01/06(火) 23:01:15.45ID:Bc4EA3Wj
まあ就職したら玉と袋の話程度も理解できない文系SEの奴隷として
搾取されるんですけどね
0221デフォルトの名無しさん2015/01/06(火) 23:08:04.94ID:Q7R46vB5
これで就職できるの?迷惑防止条例違反だわ
0222デフォルトの名無しさん2015/01/06(火) 23:16:03.06ID:/zWcLRCZ
玉と袋が有って棒はないの?
0223デフォルトの名無しさん2015/01/06(火) 23:28:31.96ID:Q7R46vB5
完全におっさんの発想
0224デフォルトの名無しさん2015/01/06(火) 23:59:07.16ID:fH0Fgns+
>>136と>>157両方試したけど、136でも全然偏ってないけどな
0225デフォルトの名無しさん2015/01/07(水) 00:03:39.74ID:kDJhAAzR
すみません、この流れを作った>>132です。
一応、報告と、また低レベルな質問をしに来たのですが
今はやめた方がいい感じでしょうか?
0226デフォルトの名無しさん2015/01/07(水) 00:04:29.36ID:dafMrNYg
>>224
ロジックを説明されても理解できないなら、せっかく>>209でコード書いて
実証したんだからそれ見て納得してよ。
0227デフォルトの名無しさん2015/01/07(水) 00:05:35.11ID:dafMrNYg
>>225
別にいいよ。
荒れたって死人がでるわけじゃない。
多少スレッドの見通しが悪くなるだけだ。
0228デフォルトの名無しさん2015/01/07(水) 00:05:49.11ID:2DuSSq4q
>>225
いや、むしろこの流れを変えて欲しい
0229デフォルトの名無しさん2015/01/07(水) 00:15:10.63ID:kDJhAAzR
また私のせいで荒れてしまったらすぐ引き上げます。すみません。

まず、
・カード・タイプごとにクラスを切るのをやめた
・カード種類の判別は普通のintの数字のみにした
・int型のリストにランダムでカード種類を表す整数リテラルを入れ、それをシャッフルする

これでやりました
結果から言うと、やりたかった事は出来ました

また、シャッフル(ランダムにする)する処理は昨日一日調べたのですが
FisherYatesを最初使っていたのですが、もっと簡単にできるのがあるという記事を見つけて
FisherYatesをやめ、以下のように書きました。

private static void Fisher(int[] c)
{
int[] cardlist = c; //引数の配列を格納

// 1回じゃ偏りが生じるっぽいので念のため何度かシャッフルを繰り返す
for (int cnt = 0; cnt < 10; cnt++)
{
DeckList.cardlist = cardlist.OrderBy(i => Guid.NewGuid()).ToArray();
}
}

正直、このグイッドについてはあまり理解してないのですが、要するにOrderByというソートメソッドと
乱数を発生させるグイッドメソッドを組み合わせてランダムにインデックスの値をソートさせると認識しています

まず1点目にお聞きしたいのは、上記の処理は何か問題点を含んでいないでしょうか?という事です
ちなみに偏りについてですが、あまり起きないに越したことはないと思いますが、そこまで是が非でも
偏りを解消したいというわけでもないので、程々乱れてくれればいいという観点です。
0230デフォルトの名無しさん2015/01/07(水) 00:15:59.95ID:PZkMwQ+l
トランプとか麻雀とかで使うシャッフルなら>>136で何の問題もない
偏るって、どれだけ偏るんだよ
使い物にならないくらい偏るわけないだろ
シャッフル厨は死ねよ
0231デフォルトの名無しさん2015/01/07(水) 00:17:03.97ID:kDJhAAzR
すみません、少し訂正です

・カード・タイプごとにクラスを切るのをやめた
・カード種類の判別は普通のintの数字のみにした
・カード種類をintで判定するようにしたので、ArrayListをやめてint配列にした(public static int[] cardlist = {・・・})
・int型のリストにランダムでカード種類を表す整数リテラルを入れ、それをシャッフルする
0232デフォルトの名無しさん2015/01/07(水) 00:23:45.46ID:kDJhAAzR
何度もすみません
・int型の配列にランダムでカード種類を表す整数リテラルを入れ、それをシャッフルする

でした
0233デフォルトの名無しさん2015/01/07(水) 00:24:43.11ID:qh26SAEn
Guid(じーゆーあいでぃー)ソートが許されるのはT-SQLまで
0234デフォルトの名無しさん2015/01/07(水) 00:26:17.95ID:/xILHur9
ぐいっどそーと
0235デフォルトの名無しさん2015/01/07(水) 00:29:02.69ID:BcMWINqr
ま、いいんじゃね?
最初の、入門書も読んでるか怪しい、ど素人にもほどがある質問に比べて、
別人かのようなレベルだし。
コードも自分が納得する動きになっているんであればそれで十分かと。
0236デフォルトの名無しさん2015/01/07(水) 00:35:27.18ID:GJGYE4EM
シャッフルするなら初期状態をランダムにする必要ないんじゃないの?
0237デフォルトの名無しさん2015/01/07(水) 00:39:17.83ID:+paEBoih
>>229
シャッフルは FisherYatesが正解だよ。
GUIDでソートは簡単に書くのが目的であって、
わざわざ偏るからループまでするくらいなら FisherYatesでいい。
0238デフォルトの名無しさん2015/01/07(水) 00:41:20.08ID:+paEBoih
>>237
GUIDは別に質のいいランダムじゃないしね。
0239デフォルトの名無しさん2015/01/07(水) 00:45:57.08ID:+paEBoih
>>216
どう見ても自分に言ってる。
自分に言ってるなら違和感ない。
0240デフォルトの名無しさん2015/01/07(水) 00:49:11.22ID:6g40PNLQ
偏ってることを承知の上で使うならよいが
>>224みたいな人がゲームを作るとカルドセプトのようになる

>>191,209でせっかく実際に偏りを見せてくれてるのに
0241デフォルトの名無しさん2015/01/07(水) 01:06:06.00ID:nug8jEZh
>>239
偏ってるって言ったところで
なぜそれが偏るのか説明できなきゃ理解したことにはならないんだよ

逆に言えばなぜそれが偏るのか理解できないから
トンチンカンな説明をしだすってこと
0242デフォルトの名無しさん2015/01/07(水) 01:19:30.07ID:6g40PNLQ
おっと再びブーメランか
0243デフォルトの名無しさん2015/01/07(水) 01:26:30.11ID:kDJhAAzR
もう一つ質問があったのですが、また日を改めます
質問するレベルじゃない気もしますし

あとシャッフルはGuidやめてFisherYatesにします
ありがとうございました。
0244デフォルトの名無しさん2015/01/07(水) 01:31:14.45ID:nug8jEZh
「可能な手の総数が組み合わせの数の倍数にならない」という理論で
なぜ自分より若いインデックスの濃度が高まるのか説明できるか考えてみるといい
いかに頓珍漢な説明をしているか分かるだろう
0245デフォルトの名無しさん2015/01/07(水) 07:13:52.16ID:AKPWQzMr
>>244
トンチンカンは消えろって言ってんだよ
自覚ねえのか昨日の地球で人類最低ランキング一位のカス
0246デフォルトの名無しさん2015/01/07(水) 07:14:44.59ID:+paEBoih
>>244
やっぱり勝手に勘違いしてるんだな。
一様でないのはこういう理由で明らかと言ってるだけで、どう偏るかについては何も言ってないのに。

こういう理由で一様でないのは明らか。
→こういう風に偏る説明になってない、トンチンカンだ。
アホか。
0247デフォルトの名無しさん2015/01/07(水) 07:20:08.78ID:+paEBoih
>>246
しかも実例で偏るの見た後でしか偏るわけがないって言い張ってたくせにw
0248デフォルトの名無しさん2015/01/07(水) 08:36:08.25ID:lse0FVq2
>>244による自称正しい説明ってどれだ?
0249デフォルトの名無しさん2015/01/07(水) 08:40:58.67ID:lse0FVq2
>>248
198 デフォルトの名無しさん sage 2015/01/06(火) 18:32:22.80 ID:nsrYhV9A
>>191の結果を見ると
結局最初に0番にスワップされた奴はもう戻って来られない可能性が高いが
0は自由な位置に移動した後もう一度必ず移動するチャンスがあるので
その分移動しやすいってことか
なので自分の数字より若い位置に移動したらもう移動しない可能性が高いので
自分の数字より前の濃度が高くなるのか

これか。
ワロタ。
じゃあ何で可能性が低いどころか絶対に戻ってこれない>>157で偏らないんだよ。
0250デフォルトの名無しさん2015/01/07(水) 09:20:24.53ID:pOoHqu3J
ゲームでユニット表やアイテム表を作るのにTupleがたくさんあります
Tuple<string, string>
Tuple<string, string, sring>
Tuple<string, string, sring, sring>
これを1つのTableクラスが複数の種類のTupleを扱うためには
どういう形で持てばいいのでしょうか
Tupleの共通する基底クラスがあればいいのですが・・・あるいはインターフェース
0251デフォルトの名無しさん2015/01/07(水) 10:09:33.54ID:NB6nt07B
>>250
いまひとつどういう事をしたいのか分からない…
sringってのはstringの間違い?
0252デフォルトの名無しさん2015/01/07(水) 10:16:24.34ID:NB6nt07B
>>241
>>244

>>249

ジワる
■ このスレッドは過去ログ倉庫に格納されています