二項係数を求める関数
すのもののページ Sunomono's Pageの、すのものの「いろいろ」(その110)に、「結果が int 型に収まる限り nCr を正しく返す関数」という話出てくるのだが、次のような解答をしてくる学生はいないのだろうかと気になった。なお、範囲チェックとか最適化とか、細かい話は全部省いてある。
long comb(long n, long r) { if (n == r || r == 0) return 1L; if (r == 1) return n; if (n < 2 * r) return comb(n, n - r); return comb(n - 1, r) + comb(n - 1, r - 1); }
| 固定リンク
コメント
間延びして、ソースが読みにくい!
と思うのは、私だけ??
投稿: moke- | 2004.12.14 23:35
今のところそのようです。というか他に誰も見ているような気がしません。というか Netscape で見てますか?
投稿: フィンローダ | 2004.12.15 03:10
IEです。
投稿: moke- | 2004.12.15 08:50
Netscape で表示したのを記事にしてみました。Opera でも表示してみたのだが、多分 Opera の方がIEに近い。と思ったら capture に失敗して割とヘコんでしまった罠。
投稿: フィンローダ | 2004.12.16 05:48