题目:http://acm.hdu.edu.cn/showproblem.php?pid=2519
AC代码(C++):
#include <iostream> #include <algorithm> #include <stdio.h> #include <vector> #include <queue> #include <math.h> #include <string> #include <string.h> #include <bitset> #define INF 0x3f3f3f3f #define LFINF 1e10 #define eps 1e-7 #define MAXN 100105 #define PI 3.14159265358979323846 using namespace std; int n,m; int C[40][40]; void table(){ C[0][0] = 1; for(int i=1;i<=35;i++) { C[i][0] = 1; for(int j=1;j<=i;j++) C[i][j] = C[i-1][j]+C[i-1][j-1]; } } int main(){ table(); int t; cin>>t; while(t--){ cin>>n>>m; if(n<m)cout<<0<<endl; else cout<<C[n][m]<<endl; } }总结: 组合数打表.