이항계수 재귀함수 //이항계수 N명중 R명을 뽑는 방법 갯수 long long choose(int n, int r) { if(r ==0 || n == r) return 1; return choose(n-1, r-1) + choose( n-1 , r); } //중복값 연산 제거 long long choose2(int n, int r) { static long long memo[200][200]; if(memo[n][r] > 0) return memo[n][r]; if(r==0 || n == r) return memo[n][r] =1; return memo[n][r] = choose2(n-1,r-1)+choose2(n-1, r); return choose2(n-1, r-1) + choose2( n-1 , r); }
0 개의 댓글:
댓글 쓰기