洛谷 P1313 计算系数 (二项式定理)
2024-09-06 13:58:01
这道题正好复习了二项式定理
所以答案就是a^n * b^m * c(n, k)
然后注意一些细节
我一开始写组合数只写一行的组合数
即c[0] = 1; c[i] = c[i-1] * (n - i + 1) / i
但是因为要去模,同时式子里面有除法,所以不能用这种方式
必须从头来推
然后注意组合数推要从0开始
#include<cstdio>
#include<cmath>
#include<algorithm>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
#define _for(i, a, b) for(int i = (a); i <= (b); i++)
using namespace std;
const int MAXN = 1e4 + 10;
const int MOD = 10007;
int c[MAXN][MAXN];
int pow(int a, int b)
{
int res = 1 % MOD; a %= MOD;
for(; b; b >>= 1)
{
if(b & 1) res = (res * a) % MOD;
a = (a * a) % MOD;
}
return res;
}
int main()
{
int a, b, k, n, m;
scanf("%d%d%d%d%d", &a, &b, &k, &n, &m);
_for(i, 0, k)
{
c[i][0] = 1;
_for(j, 1, i)
c[i][j] = (c[i-1][j] + c[i-1][j-1]) % MOD;
}
printf("%d\n", ((pow(a, n) * pow(b, m)) % MOD) * c[k][n] % MOD);
return 0;
}
最新文章
- PHP图片裁剪与缩放 / 无损裁剪图片
- ubuntu配置 Java SE 1.6
- 犀利的报表系统,发票据与报表开发的快速利器,AgileEAS.NET SOA中间件GReport使用指南
- oracle的散列聚簇表
- HTML的盒子模型
- bzoj 2751 快速幂
- Hibernate HQL基础 使用参数占位符
- oracle监听(lsnrctl)详解解读
- ASP.NET Core Middleware 抽丝剥茧
- 历时25天,我的博客(www.ityouknow.com)终于又活了过来
- 直接复制浏览器Request headers中的进行copyheaders进行转换
- 【linux】环境变量
- 不要随便使用 runAllManagedModulesForAllRequests=";true"; 来解决问题
- 用 TensorFlow 实现 k-means 聚类代码解析
- RGB2YCbCr RGB2Gray
- EasyPlayer RTSP安卓Android播放器架构简析
- 启动入口Start.java分析
- bos开发日记一
- mongoDB之find()
- use getters and setters Learning PHP Design Patterns