スレを勃てるまでもないC/C++の質問はここで 7at TECHスレを勃てるまでもないC/C++の質問はここで 7 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト7:デフォルトの名無しさん 09/01/27 00:30:42 立ってしまったからには使うしか無いな。 8:デフォルトの名無しさん 09/01/27 00:43:56 乱数一回で3万件のシャッフルできるやつ明日までに作るから待ってろ。他のプログラム使わず。 9:デフォルトの名無しさん 09/01/27 00:50:47 たのんます。 10:デフォルトの名無しさん 09/01/27 02:39:14 30000!まで扱うのは出来るとしても、その範囲の乱数の生成法が思いつかん。 ちょうど2の1000乗とかだったら、rand()をシフトさせればいいが。 何桁なのかもわからん。 11:デフォルトの名無しさん 09/01/27 02:55:24 スターリングの公式に当てはめると30000!は2進数でおよそ403200桁らしい。 計算結果 http://www.google.com/search?q=%280.5*log%282*3.14*30000%29%2B30000%28log%2830000%29-log%282.7%29%29%29%2Flog%282%29&lr= 12:デフォルトの名無しさん 09/01/27 03:24:17 シャッフルの人に聞きたいんだが、どこが遅いかおおむね分かったりしないかな。 というかどれくらいかかってるの? ファイル名ということであれば256バイト固定でやってもいいように思う。 3万回のallocのコストが影響してるのかもしれないし。 連続領域の2次元配列で、インデックスのみのシャッフル(>>956-957)を試してみて。 毎回allocするのはコストが高いかも。ファイル名取得コストも調べないとだけど。 それと、tempという変数がグローバル変数ならローカル変数に変えてみて。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch