公式
A
n
m
=
n
!
(
n
−
m
)
!
=
n
⋅
(
n
−
1
)
⋅
(
n
−
2
)
⋅
⋅
⋅
(
n
−
m
+
1
)
A_n ^ m=\frac{n!}{(n-m)!}= n \cdot (n-1) \cdot (n-2) \cdot \cdot \cdot(n-m+1)
Anm=(n−m)!n!=n⋅(n−1)⋅(n−2)⋅⋅⋅(n−m+1)
C
n
m
=
A
n
m
m
!
C_n^m=\frac{A_n^m}{m!}
Cnm=m!Anm
代码
#include<iostream>
#include<cmath>
using namespace std;
int factorial(int start, int end){
int ans=1;
for(int i=start; i <= end; i++){
ans *= i;
}
return ans;
}
int A(int n, int m){
return factorial(n-m+1, n);
}
int C(int n, int m){
return A(n, m) / factorial(1, m);
}
int main(){
cout<<A(5, 2)<<" "<<C(5, 2)<<endl;
return 0;
}