« ウンともスンともという慣用句の「スン」とは最上という意味(へぇ~) | トップページ | スンの件ですがトラックバックになっとらんというご指摘なので調べてみたりする »

二項係数を求める関数

すのもののページ 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

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: 二項係数を求める関数:

« ウンともスンともという慣用句の「スン」とは最上という意味(へぇ~) | トップページ | スンの件ですがトラックバックになっとらんというご指摘なので調べてみたりする »