[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 20:18 / Filesize : 259 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

プログラミングの為の数学と算数 vol.2



1 名前:デフォルトの名無しさん [04/09/05 16:22]
プログラムに必要な数学、算数に関する話題について
語りましょう。TIPS/Q&Aスレです。

454 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 22:27:09 ]
今一状況がわかんないんだけど、divの定義見た?
あんなの使う気にならないんだけど。

455 名前:434 [2006/03/10(金) 22:34:07 ]
>>454
だったらインラインアセンブラでやるといいよ。
cだけで書くなら

x+=y/2;
int r=x/y;
if( (x % y)<0) r--;
return r;


456 名前:434 [2006/03/10(金) 22:54:48 ]
>>451

原理としては、 余りが負数にならないように巧くオフセットを加えてるわけだよね
巧い方法だけど、 a b が大きい時にオーバフローの問題が起きるね。

abs*a ではなくて
aよりも少しだけ大きい bの倍数 を計算させた方がいいのでは?

この場合 >>436 のように座標計算に使うのだから、 マッピングモード設定 時に予め計算させておけばいい


457 名前:434 [2006/03/10(金) 22:56:56 ]
ああボケてるな マッピングモード設定 時にはaが判らないのだから予め計算出来る筈がない

458 名前:デフォルトの名無しさん [2006/03/10(金) 23:12:33 ]
学校の宿題なのですが、
廊下にたっていて、向かい側の壁にはたくさんの開くドア又は開かないドアA,B,C。。。。が無限にあって、
それを開くかどうか確認したい。

スタートはAとーAの間にいる。
。。。|D|C|B|A|−A|−B|ーC|−D|。。。っとドアが続く

最初に地点から一番近い、開くドアを見つけたいが、動く距離をxとして、
距離の総和がO(x)ペースになるように探したい。
例えば、A,−A,B,−B,C,ーCの順番で探していくと、
動く距離が、1、2、3、4、5,...nとなり、距離の総和は1/2*(n)*(n-1)となり、
O(X^2)のペースになるから駄目である。

っていう問題なのですが、何か良い探し法、アルゴリズムありますかね?

459 名前:434 [2006/03/10(金) 23:13:40 ]
aよりも少しだけ大きい bの倍数 だけど

( abs(a/b)+1)*b でどうだろ?
除算が遅いなら | b|をシフトしていって |a| を超えた所でもいいか

460 名前:434 [2006/03/10(金) 23:21:43 ]
>>458

で、開いてるか開いていないかの確率はどの程度なの?
というか確率を仮定して

右方に N1内で調べてみてなければ右側にN2個調べて 見つかる確率を求めてみたら?

右側で M番目に開けば左側でM番目まで調べ調べればいいでしょ


461 名前:デフォルトの名無しさん [2006/03/10(金) 23:29:11 ]
確率は問題には確定されてないです。

それも考えたのですが、例えば、3つずつの固まりで調べていくとして、
C,B,A,-C,-B,-A,
F,E,D,−F,−E,−D
距離を考えていくと、
(3+1+1)+(3+1+1)+
(6+1+1)+(9+1+1)+、、、
となって、総和はどうなるのでしょう。。。

462 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 23:40:17 ]
初期位置より右側を線形探索形に (-A,-B,-C,...) するようにして
初期位置より左側を A , C , E と2個おきに移動 して末端 n で(奇数個偶数個で微調整か?)
.... F D B と戻ってくれば O(x) っぽくならない?



463 名前:434 [2006/03/10(金) 23:47:52 ]
だいたいこういうのは2倍づつ調べるのを増やすんだろうけどなあ

464 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 23:51:11 ]
>>458
左の方を一つ探す「A」
右の方を二つ探す「-A, -B」
左の方を四つ探す「B, C, D, E」
右の方を八つ探す「-C, -D, -E, -F, -G, -H, -I, -J」

この要領でいけないかな。

465 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 23:55:52 ]
>>458
>A,−A,B,−B,C,ーCの順番で探していくと、
>動く距離が、1、2、3、4、5,...nとなり、距離の総和は1/2*(n)*(n-1)となり、
>O(X^2)のペースになるから駄目である。
「調べないけど移動してる」に オーダーのコストかかってる?

466 名前:デフォルトの名無しさん [2006/03/11(土) 00:06:37 ]
>>464
そうすると、kブロックに区切って、
(1)+(1+1)+(3+1+1+1)+(7+1+1+1+1+1+1+1)+(15+1+1+1+1+1+...)+
= 1+1*2+3*2+7*2+15*2+....+?

467 名前:デフォルトの名無しさん [2006/03/11(土) 00:08:01 ]
立ち止まる=調べる、
動く距離=そこで調べるの意味だと思います。

468 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 00:31:55 ]
>>464で、x番目に調べるまでの距離の総和をf(x)とすると、
f(2^n-1)
= 2*Σ{i=1..(n-1)}(2^i-1)
= 2*((2^n-2)-(n-1))
<= 2*2^n
2^(n-1) <= x <= 2^n-1のとき、
f(x) <= f(2^n-1)
<= 2*2^n
= 4*2^(n-1)
<= 4*x
よってO(x)

469 名前:デフォルトの名無しさん [2006/03/11(土) 01:10:36 ]
>>468
なるほど。
助かりました。
ありがとうございました。

470 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 22:27:00 ]
(0,1)における実数の集合が、可算無限集合ではないことを背理法と対角線論法を使って証明するやつだけど、
いまいち何やってるか分からないんだよね。
分かった気にはなるけど、どうもしっくりこないっつうかなんつうか。
他に証明方法とかあるのかね?

471 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 22:38:27 ]
>>470
有理数列と実数の部分集合に1対1の対応が作れる
有理数列は自然数→有理数の写像とみなせる
自然数→有理数の写像の濃度は アレフ0^アレフ0 = 2^アレフ0
アレフ0 < 2^アレフ0
(ある集合の濃度が N のとき、その冪集合の濃度は 2^N、
 ある集合とその冪集合の間にはどうやっても全単写が作れない)
なので、可算濃度<実数の濃度

472 名前:デフォルトの名無しさん [2006/03/16(木) 13:32:51 ]
冪集合がわからんヒトがいると見た。



473 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 08:50:19 ]
数学板から誘導されて来ました。
QRを解析するプログラムを作ろうと思っているのですが、
誤り訂正複合のリード・ソロモン符号の複合の仕方が分かりません。

R=(r0,r1,r2,r3...,r25)
R(x)=(r0+r1x+r2x^2+...+r25x^25)
ここにri(i=0〜25)は、GF(2^8)の元とする。

とあり、r0-r25に間違っていないデータ(0-255)を代入しているのですが、次のシンドロームを求める式でシンドロームが0になってくれません。

シンドロームSiを求める式
S0=R(1)=r0+r1+r2....+r25
S1=R(a)=r0+r1a+r2a^2....+r25a^25

データをr0-r25に代入して、それらをGF(2^8)の法100011101(a^8+a^4+a^3+a^2+1)で割っているのですが0になりません。

もう数日煮詰まっています。お願いします。何方かご教授して下さい。



474 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 09:42:13 ]
>>473
誰かのコードを参考にするといいよ
例:
isw3.kankyo-u.ac.jp/project/2004/project/1013063.pdf

475 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 11:04:44 ]
>>474さん、ありがとうございます。
ありがたく拝見させてもらいましたが、残念ながら書き込みの処理しか載っていませんでした。
(書き忘れて申し訳ございませんが、473で書いた部分はQRを読み取る部分の処理です)

他にもあるかもと思って「誤り訂正 QR」などで検索を掛けてみましたが、書き込みに関する部分ばかりで、
読み取り解析に関するサイトは見つかりませんでした。

JISの企画書もシンドロームを求めるとしか書いてありませんし、もう、完全に行き詰っています。
どんな些細な事でも結構ですので、アドバイスを頂けないでしょうか。
お願いします。


476 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 11:27:53 ]
>>475

その部分のコード晒してみて、
+ は XORの事とか  掛算は足算の事とか、そこらへんは判ってるんだよね?


477 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 11:37:40 ]
>>475
じゃあココのは見たの? オレは中身はみてないけど
sourceforge.jp/projects/qrcode/


478 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 12:37:08 ]
>>476さん、ありがとうございます。
+は足し算で、掛け算は掛け算で計算していたので、直してみましたが、やはり0になってくれません。
コードはこのようになっています。

//求められたデータ語
int[]Data={
32, 65, 205, 69, 41, 220, 46, 128, 236, 42, 159, 74, 221,
244 ,169, 239, 150, 138, 70, 237, 85, 224, 96, 74, 219, 61 };

//a指数→整数
int[] a_int={1,2,4…(以下続いています)};
public void Syndrome(){
//求めるシンドロームの数を決定
int[]S=new int[8];
for(int i=0;i<S.length;i++){
for(int d=0;d<Data.length;d++){
S[i]=S[i]^(Data[d]+a_int[(d*i)%255]);
}
}
}

>>477さん、
このプログラムは知りませんでした。早速今から落として見て見たいと思います。
ありがとうございます。

479 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 13:24:07 ]
>>478 やっぱり計算式が違うよ >>474のcalculate.javaをよく見てみて

480 名前:http://www.vector.co.jp/soft/win95/util/se072729.html mailto:http://www.microsoft.com/japan/windowsxp/64bit/default.mspx [2006/03/18(土) 19:44:49 ]
TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?

481 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 23:37:58 ]
ラジアンをぶつかった壁に対して面対称で
XだけYだけ90°ひっくり返すにはどうすればいいの?

482 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 23:56:28 ]
いや言ってる意味が良くわかりませんから



483 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 00:24:24 ]
ビリヤードか

484 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 00:45:38 ]
vy = -vy;
vx = vx + 90/180*PI

485 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 11:03:21 ]
>>483 ビリヤードなら90度というのがどこから来るのか・・・・

486 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 16:05:35 ]
必ず90度で跳ね返るPONGでも作ってみるか

487 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 16:42:10 ]
その場合、速度はどうなるのん?

488 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 17:22:36 ]
必ず180で反射するコーナーリフレクターは実在するけど
必ず90度ってどうやるんだ?

489 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 17:24:03 ]
三角関数?簡単なブロック崩しだったらそんなの使わんぞ
つーか、玉の軌道をX軸かY軸で反転すれば問題なし。

490 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 18:44:58 ]
さて、ここで唐突に「三角関数」とか出てきたわけだが

491 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 18:52:43 ]
「プログラマが今まで「これはすげえ」と思ったゲーム」
の149からの流れがここに?
pc8.2ch.net/test/read.cgi/prog/1134791216/149-

492 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 19:24:06 ]
ttp://www.dango-itimi.com/blog/archives/2005/11/1.html
斜面への衝突判定と反射1



493 名前:デフォルトの名無しさん [2006/03/23(木) 07:46:12 ]
学校の宿題なのですが・・・。

HはHASH関数で、p は(p-1)/2も素数であるような素数。
aは、1<a<p-1も満たす整数。
g=a^2(mod p)
H(x,y,z,t)=g^(xy+zt) (mod p)
このとき、Hはone-way関数であるが、collision-free関数ではないことを示せ。

なのですが、どなたか分かる方、助けてください。

494 名前:デフォルトの名無しさん mailto:sage [2006/03/23(木) 12:28:39 ]
定義は知らんがアバウトに考えて、
剰余が絡んでる段階で多対一関数だから1方向だろうし
collision-freeではなさそうだわな。

証明は2つの値が実際に1個の値になる例を計算すればいいんじゃね?

495 名前:494 mailto:sage [2006/03/24(金) 16:59:01 ]
エエカゲンに書いたのに誰も突っ込まない…。



ほ、放置プレイ?

496 名前:デフォルトの名無しさん mailto:sage [2006/03/24(金) 18:30:11 ]
定義がないのでなんともはや

497 名前:デフォルトの名無しさん [2006/03/28(火) 08:18:12 ]
sin(x)/x

Q1  って関数に名前を付けたいけど適切な名前は?

Q2  浮動小数点なので計算方法は単純に
     abs(x)<0.0001 の時は1-x*x/6 でなければ そのまま計算でいいよね?

498 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 08:53:02 ]
キャラの座標は
左上と真ん中
どちらのポイントを保持して使うべきですか

499 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 08:55:22 ]
>>497
sine_x_per_x()

500 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 09:01:48 ]
>>498
いまどきどこでもいい。
処理によって必要な座標は違う。例えばサイドビューのジャンプアクションなら足元座標も使う。
必要な座標を計算するメソッドがあればそれでよい。

数学関係ない。

501 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 12:19:04 ]
>>497
それは一般的にsinc関数と呼ばれている。

502 名前:497 mailto:sage [2006/03/28(火) 12:41:21 ]
>>501 ありがとう



503 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 17:19:04 ]
>>498
RPGの座標には、マップ上の座標と表示する座標があるが、
マップ上の座標で保存する。
表示する時には、表示する座標に変換して表示する。

504 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 17:58:28 ]
>>503
キャラといえばRPGしか連想できないゲーマーですか?

505 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 23:55:29 ]
すまん。
でも数ピクセル単位で動かす事になるとおもうから、
その動かせる単位の位置を保存して、
表示する位置に変換するって感じで使えるかも。

506 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 10:10:24 ]
座標は数学でしょ

507 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 17:34:46 ]
2Dゲームを作っているのですが、
640×480の画面に32×32の画像をしきつめようとすると、
右端と下端がきれいにそろわず、ちょっとはみだしたりしまいます。
これって例えば何が原因で起こるのでしょうか。


508 名前:デフォルトの名無しさん [2006/03/29(水) 17:45:27 ]
■■■■■■■■■■■■■■■■■■■■ どういう状況なの?
■■■■■■■■■■■■■■■■■■■■ 20x15 で普通に敷き詰められるよね?
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■


509 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 18:10:03 ]
>507
まさか浮動小数点演算が介在してたりせんだろうな?

510 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 18:33:53 ]
>>507
>例えば何が原因で
・計算間違い
・勘違い
・お門違い

511 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 18:39:10 ]
基地(ry

512 名前:デフォルトの名無しさん mailto:507は小学生? [2006/03/29(水) 20:09:24 ]
>>507
右端は揃うんじゃマイカ?

マジレスすると、敷き詰める画像のサイズが640と480の公約数である必要がある。




513 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 20:17:27 ]
どうしても正方形が好きならね。

514 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 22:22:06 ]
480って32で……あれぇ?うぅー?

515 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 23:42:36 ]
勘でいうとAdjustWindowRectしてないから

516 名前:デフォルトの名無しさん mailto:sage [2006/03/30(木) 09:24:33 ]
テクスチャで貼っててピクセルがずれている悪寒。

517 名前:デフォルトの名無しさん mailto:sage [2006/03/31(金) 01:31:23 ]
>>498
>>507
お前さ
いい加減あちこちにマルチポストするの止めろよ
もしくは解決したなら解決したと全てのスレに書いて回れ

518 名前:デフォルトの名無しさん mailto:sage [2006/03/31(金) 23:45:54 ]
地球の下側は反対に回っているってどういう意味ですか?
上も下も繋がっているんだから回る方向は同じじゃないの?

519 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 02:22:08 ]
>>518
オーストラリアの世界地図 でググってみるといいかも
方向という単語の意味の問題だから、ここはスレ違いかも

520 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 03:18:09 ]
北半球の人間はオーストラリアが下だろと認識している
南半球の人間はロシアが下だろと認識している

521 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 04:01:57 ]
南半球では西から日が昇るんだよね?


522 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 11:13:29 ]
右からだよ



523 名前:デフォルトの名無しさん mailto:sage [2006/04/02(日) 08:07:38 ]
ラグナロクみたいなオンラインゲームでステータスを表示したり、
所持アイテムを表示したりする、ウィンドウについて。
これって、どうやって実装してるんでしょうか?
ただ単に固定されてるウィンドウをつくるなら、ウィンドウのテクスチャ描いて、
それを張って、座標が決まっているのでそこに文字やらなんやら表示すれば良いと
思うんですけど、
オンラインゲームに存在するウィンドウって、windowsのウィンドウみたいに
マウスでクリックすると自由に動かすことができますよね?
これって、APIで一つ一つ子ウィンドウを作って、そこに表示させてるんでしょうか?
もしくは、他に方法とかあるんでしょうか、助言をよろしくお願いします。

524 名前:デフォルトの名無しさん mailto:sage [2006/04/02(日) 08:27:33 ]
pc8.2ch.net/test/read.cgi/gamedev/1137730564/543

525 名前:デフォルトの名無しさん mailto:sage [2006/04/02(日) 08:28:25 ]
>>523
つ[DirectX]
後スレ違い。

526 名前:デフォルトの名無しさん mailto:sage [2006/04/02(日) 14:00:59 ]
DirectXは直接的にはかんけいないだろ

527 名前:デフォルトの名無しさん mailto:sage [2006/04/03(月) 04:30:12 ]
>>523
>>517

528 名前:デフォルトの名無しさん mailto:sage [2006/04/07(金) 13:54:31 ]
>526
「数学と算数」よりは関係あるけどな。

529 名前:デフォルトの名無しさん [2006/04/24(月) 11:15:56 ]
>528
そうか?

530 名前:デフォルトの名無しさん [2006/04/24(月) 13:10:28 ]
>>528
クリッピングや論理演算は数学の範疇だと思うんだけどな

531 名前:デフォルトの名無しさん mailto:sage [2006/04/25(火) 12:28:25 ]
ハァ?
DirectXはスレ違いだし、クリッピングの話なんてどこにも出てないが?

532 名前:デフォルトの名無しさん mailto:sage [2006/04/25(火) 14:21:17 ]
DirectX 描画者たち

窓の中の昴〜♪



533 名前:ルカ [2006/04/26(水) 16:58:08 ]
sgn←これなんて読むの?だれかがシグネーチャー?って読んでたんだけどそれでオッケイなんですか?
てかこれどういう意味?符号関数ってなんですか・・・
すいませんここはプログラムとかそういうサイトっぽいけどたぶんここしか頼れる所がないので・・・
大学の数学で出てきたんですけどもしよろしければ誰か教えてください(>_<)

534 名前:デフォルトの名無しさん mailto:sage [2006/04/26(水) 17:02:02 ]
もうシグネチャーでいいと思うよ。

まあ、マジレスすると、符号関数でぐぐればいくらでも説明出てくる。

535 名前:デフォルトの名無しさん [2006/04/26(水) 18:13:04 ]
現在、固有値および固有ベクトルを求めるプログラムを作成しているのですが
固有ベクトルの求め方で質問させていただきたいことがあります。
固有値はハウスホルダー変換と2分法で求めました。
その後、逆反復法を用いようと思っているのですが、
初期ベクトルの決め方と、繰り返し回数がわからず困っています。
どなたか教えていただけないでしょうか?

536 名前:デフォルトの名無しさん mailto:sage [2006/04/26(水) 20:23:48 ]
sgnと関数でぐぐるだけでも出てきそうなもんだが試した訳ではない。

537 名前:デフォルトの名無しさん mailto:sage [2006/04/27(木) 01:34:48 ]
sgnでググってみたら一番上がFortranの(だと思う)sgn関数の説明だった。
sgnの読み方はともかく、意味は分かるだろう。符号関数とも書いてるから
探しているものという確認も取れるし。

そしてシグネーチャーでオッケイかを知りたければシグネーチャから思いつく
綴りを全部辞書で調べろ。

538 名前:デフォルトの名無しさん mailto:sage [2006/04/27(木) 02:01:54 ]
>>535
初期ベクトルは、求めたい固有ベクトルの成分がゼロ、
もしくは、よほどゼロに近くない限りなんでもいいんじゃない?
ランダムなベクトルにするとか。
例え、偶然にも求めたい固有ベクトルの成分がゼロの初期ベクトルを
選んでしまったとしても、なんだかんだで誤差が出てくるので、なんとかなるかも。
収束は遅くなるだろうけど。

繰り返し回数は、求めたい精度に達するまでやればいいと思う。
Aを行列、aを固有値、xを求めた固有ベクトル、として、
(x,Ax)/(x,x)を計算すれば、固有値aの近似値が求まるから、
その精度を、既に求まっている固有値aと比較するとか。


539 名前:535 mailto:sage [2006/04/27(木) 11:26:58 ]
なるほど、ありがとうございました。
参考にさせていただきます。

540 名前:デフォルトの名無しさん [2006/05/03(水) 12:47:46 ]
行列を使って非斉次の連立方程式を解くんだが、
行列の成分の

90%が0
8%が1
2%がその他

という行列を解くには
どんなアルゴリズムを使えば高速に解ける?

こういう行列に限り高速にできるとか
そんなアルゴリズムないかなと思ったんだが。


541 名前:デフォルトの名無しさん mailto:sage [2006/05/03(水) 14:35:25 ]
どこが非ゼロなのか、という情報がないとなんともいえない。
非ゼロの位置に特徴が無い場合は、行列をリスト表現して計算するくらいしか。

542 名前:デフォルトの名無しさん mailto:sage [2006/05/03(水) 17:01:03 ]
>>541
サンクス
非ゼロの位置に規則性はないわ。
あきらめとく。




543 名前:デフォルトの名無しさん mailto:sage [2006/05/03(水) 18:30:42 ]
"sparse matrix"でググれば英語ばかりだが参考になりそうなサイトが出てくる

544 名前:デフォルトの名無しさん [2006/05/05(金) 01:27:02 ]
1:30〜

たけしのコマネチ大学数学科
live22x.2ch.net/test/read.cgi/livecx/1146759594/

545 名前:デフォルトの名無しさん mailto:sage [2006/05/07(日) 17:26:16 ]
>542
非零が疎な行列だと反復法系のアルゴリズムが案外早いぞ。

546 名前:デフォルトの名無しさん [2006/05/23(火) 08:07:13 ]
朝倉から「コンピュータ代数ハンドブック」、定評のあるModern Computer Algebra 2nd ed.の
待望の翻訳!!、なる案内がきたが、定評と待望についてよろしく。

しかし\31,500とはずいぶんだな。

547 名前:デフォルトの名無しさん [2006/06/15(木) 10:42:40 ]
保守

548 名前:デフォルトの名無しさん [2006/07/16(日) 09:13:35 ]
保守

549 名前:マイク ◆yrBrqfF1Ew mailto:sage [2006/07/19(水) 14:31:54 ]
おい以下の問題がわからないので中卒の俺でもわかるようにPerlのコードをまじえて教えろ。

n個の区間Ii = [ai, bi](i=1,2,...,n)が与えられる時重なりを持つ区間の対を
全て列挙したい。なお[ai, bi]は実数の集合{x∈R | ai <= x <= bi}を表し、
二つの区間IiとIjが重なりを持つとは[ai, bi]∩[aj, bj]が空集合でないことを
意味する。全てのi = 1,2,..,nに対してaiとbiは整数でai<=biを満たし、
また任意のiとj(i != j)に対してai != ajを仮定する。区間のデータは
端の値aiとbiが配列で与えられており2つの数の大小比較や四則演算などの基本操作は
全てO(1)時間で可能とする。

(i) 区間対全てに対してそれぞれ重なりの有無を調べて
該当するものを列挙する方法が要する時間量を述べよ。

(ii) 重なりを持つ区間対の総数をkとする時、そのような区間対を列挙する
O(nlogn+k)時間のアルゴリズムを与えよ。

(iii) 重なりを持つ区間対を列挙するのではなく、その総数kのみを出力する
O(nlogn)時間のアルゴリズムを与えよ。

550 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 15:07:18 ]
Perl 以外でもいいですか?

551 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 15:23:21 ]
>550
>549に代わってお願いします。
ぜひC++で(ry

552 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 15:23:34 ]
>>糞コテ
そういう態度だから何処へ行っても嫌われる。



553 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 21:59:50 ]
>549
死に晒せヴォケ

554 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 07:11:30 ]
550 じゃないが

>>551
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2409.cpp

方針は以下:

(1) は自明.
(2) はソートして左から数える.ソートしたおかげで単調性が得られ,
  一度交わらなくなったらそれより先を調べる必要がなくなる.
(3) は (2) でどこまで調べないといけないかを二分探索を行う.






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<259KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef