题解 | 牛牛的排列数
牛牛的排列数
https://www.nowcoder.com/practice/9ca1c236cdbf46da9e08e1f510808625
//注意两个问题,一个是范围溢出问题,一个是n<=m的问题
#include <stdio.h> //标准输入输出函数头文件
long long T(int x)
{
long long sum=1; //定义整型变量,作为返回值
for(int i=1;i<=x;i++)
{
sum*=i;
}
return sum;
}
int main()
{
int n,m; //定义整型变量,保存用户输入的信息
//输入
scanf("%d %d",&n,&m);
//判断特殊情况
if(n<=m)
{
printf("0");
return 0;
}
long long s1=T(n); //调用函数求出n的阶乘
long long s2=T(n-m); //调用函数求出(n-m)的阶乘
long long num=s1/s2; //求出最终结果
//输出
printf("%lld",num);
return 0;
}
