"PHP nCr()"의 두 판 사이의 차이

(새 문서: ==개요== ;PHP nCr() <source lang='php'> <?php function nCr($n, $r) { if( $r > $n ) return -1; if( $r == 0 ) return 1; if( $n == $r ) return 1; return nCr($n-1,$r)+n...)
 
2번째 줄: 2번째 줄:
;PHP nCr()
;PHP nCr()


<source lang='php'>
<?php
function nCr($n, $r) {
    if( $r > $n ) return -1;
    if( $r == 0 ) return 1;
    if( $n == $r ) return 1;
    if( $n-$r<$r ) $r=$n-$r;
    $res = 1;
    for($i=1; $i<=$r; $i++) $res*=($n-$i+1)/$i;
    return $res;
}
echo nCr(1,2) . PHP_EOL;
# -1
echo nCr(2,2) . PHP_EOL;
echo nCr(3,2) . PHP_EOL;
echo nCr(4,2) . PHP_EOL;
echo nCr(5,2) . PHP_EOL;
echo nCr(1000,5) . PHP_EOL;
# 1
# 3
# 6
# 10
# 8250291250200
</source>
<source lang='php'>
<source lang='php'>
<?php
<?php
11번째 줄: 35번째 줄:
}
}
echo nCr(1,2) . PHP_EOL;
echo nCr(1,2) . PHP_EOL;
# -1
echo nCr(2,2) . PHP_EOL;
echo nCr(2,2) . PHP_EOL;
echo nCr(3,2) . PHP_EOL;
echo nCr(3,2) . PHP_EOL;
16번째 줄: 41번째 줄:
echo nCr(5,2) . PHP_EOL;
echo nCr(5,2) . PHP_EOL;
echo nCr(52,5) . PHP_EOL;
echo nCr(52,5) . PHP_EOL;
# -1
# 1
# 1
# 3
# 3

2019년 1월 4일 (금) 01:42 판

1 개요

PHP nCr()
<?php
function nCr($n, $r) {
    if( $r > $n ) return -1;
    if( $r == 0 ) return 1;
    if( $n == $r ) return 1;
    if( $n-$r<$r ) $r=$n-$r;
    $res = 1;
    for($i=1; $i<=$r; $i++) $res*=($n-$i+1)/$i;
    return $res;
}
echo nCr(1,2) . PHP_EOL;
# -1
echo nCr(2,2) . PHP_EOL;
echo nCr(3,2) . PHP_EOL;
echo nCr(4,2) . PHP_EOL;
echo nCr(5,2) . PHP_EOL;
echo nCr(1000,5) . PHP_EOL;
# 1
# 3
# 6
# 10
# 8250291250200
<?php
function nCr($n, $r) {
    if( $r > $n ) return -1;
    if( $r == 0 ) return 1;
    if( $n == $r ) return 1;
    return nCr($n-1,$r)+nCr($n-1,$r-1);
}
echo nCr(1,2) . PHP_EOL;
# -1
echo nCr(2,2) . PHP_EOL;
echo nCr(3,2) . PHP_EOL;
echo nCr(4,2) . PHP_EOL;
echo nCr(5,2) . PHP_EOL;
echo nCr(52,5) . PHP_EOL;
# 1
# 3
# 6
# 10
# 2598960

2 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}