2013-07-01から1ヶ月間の記事一覧

グラフのすべての2頂点間の最短路をワーシャルフロイド法で求める

ワーシャルフロイド法というのを使うと、グラフのすべての2頂点間の最短路を求められるらしい。蟻本を参考にして解いてみた。以下のグラフを例にとって、全点対の最短路を求める。 コードは以下。 #include <cstdio> #include <algorithm> #define REP(i,n) for(int i = 0; i < </algorithm></cstdio>…

C++で、重複順列を全列挙する

異なるn個のものから、重複を許してr個を取り出して列をつくることを、n個からr個とる重複順列という。これをC++で全列挙することを考える。例題として、1〜5の数字を使ってできる3桁の数字を全列挙することを考える。そのコードは以下の通り。 #include <iostream> #i</iostream>…

Excelで正規分布に従う乱数列を生成する

rand()関数とnorminv()関数というのを組み合わせると、任意の正規分布に従う乱数列を生成できるらしい。 例えば平均70、標準偏差10の正規分布に従う乱数列は以下のようにして生成できる。 =NORMINV(RAND(), 70, 10)いくつかのセルに上の式をコピーして、以下…

高校数学のベクトルを復習

高校時代のベクトル、つまり幾何と深く結びついた2次元or3次元のベクトルについて、すっかり忘れていた内容を以下にまとめた。自分用のまとめなので、全然網羅性はない。 内積の定義 内積と成分 余弦定理を使って導く。 中線定理 △ABCの辺BCの中点をMとした…

二項係数に関する公式を感覚的に理解する

高校数学で学ぶ二項係数の公式に以下のものがある。 これは以下のような例で考えると感覚的に分かる。 10冊の漫画本から3冊を選ぶことを考える。選び方は通りある。 3冊の中に漫画の1巻を含める場合と含めない場合とに場合分けしてみる。すると以下のように…