计算系数(二项式定理逆元费马小定理)
给定一个多项式(ax+by)^k,请求出多项式展开后(x^n)*(y^m)项的系数。
输入格式
共一行,包含 5 个整数,分别为 a,b,k,n,m,每两个整数之间用一个空格隔开。
输出格式
输出共 1 行,包含一个整数,表示所求的系数,这个系数可能很大,输出对10007 取模后的结果。
数据范围
0≤n,m≤k≤1000,
n+m=k,
0≤a,b≤106
输入样例:
1 1 3 1 2
输出样例:
3
解题步骤:
根据二项式定理:
得(x^n)*(y^m)的系数为:
所以只要根据这个公式,分别计算出其三部分,然后乘起来即可。
对于(a^n)*(b^m),可以直接采用快速幂来求。
对于C(n,k)=(k*(k-1)*(k-2)*...*(k-n+1))/(1*2*3*..*k),这个分式,首先用逆元将除法变为乘法,即:x/y=x*y的逆元
形如:A*x%p=1%p (表示A关于p的逆元x)
根据费马小定理:a^(p-1)%p=1%p, (p为素数)
所以:(a^(p-2)*a)%p=1%p,这就转化成了A的逆元的形式,这里a相当于A,a^(p-2)就是a关于p的逆元
所以这里对于这个分式里的分母的每个数t转化成其逆元就是t^(p-2)=t^10005,用快速幂算出来,然后让分子和这些逆元累成起来就可以了。
完整代码:
#include <iostream>using namespace std;const int mod=1e4+7;int a,b,k,n,m;int qmi(int a,int b)
{a%=mod;int res=1;while(b){if(b&1) res=res*a%mod;a=a*a%mod;b>>=1;}return res;
}signed main()
{cin>>a>>b>>k>>n>>m;int res=qmi(a,n)*qmi(b,m)%mod;for(int i=1,j=k;i<=n;i++,j--){res=res*j%mod;res=res*qmi(i,mod-2)%mod;}cout<<res<<endl;return 0;
}
计算系数(二项式定理逆元费马小定理)相关推荐
- 子段乘积(逆元费马小定理)+线段树做法
题解:一开始做这个题的时候想过尺取法,但是因为没有逆元的知识,不知道该如何不断删除左端元素.其实这题并不难想,设l,r为两端开始都置为1,当长度小于k的时候不断乘右端元素并取余,当长度等于k时删除左端 ...
- 除法取模与逆元/费马小定理
对于正整数和,如果有,那么把这个同余方程中的最小正整数解叫做模的逆元. 逆元一般用扩展欧几里得算法来求得,如果为素数,那么还可以根据费马小定理得到逆元为.(都要求a和m互质) 推导过程如下(摘自Acd ...
- 逆元+费马小定理+扩展欧几里得
逆元:(即是逆元素)逆元素是指一个可以取消另一给定元素运算的元素. 在一个代数系统(S,*)中,存在单位元素e,如果对S内的元素a存在a^-1 * a = e,则将 a^-1称为a 的左逆元. 同理若 ...
- jzoj4229-学习神技【逆元,费马小定理】
正题 题目大意 求 (∑i=1na∗qi)mod(109+7)(\sum_{i=1}^na*q^i)\ mod\ (10^9+7)(i=1∑na∗qi) mod (109+7) 解题思路 题目里都给 ...
- 取模除法(逆元)(费马小定理)(线性求逆元)
文章目录 引言 逆元 费马小定理 内容 应用 证明 线性求逆元 thanks for reading! 引言 我们做题时经常会由于答案过大,被要求使答案对一个质数取模 我们都知道,加和乘对取模是没有影 ...
- 费马小定理以及快速幂应用
费马小定理 定理 例子 代码 逆元 快速幂代码 快速幂求逆元 定理 假设p为质数,a不是p的倍数,则有 a p − 1 ≡ 1 ( m o d p ) a^{p-1}\equiv 1(mod \spa ...
- 洛谷 [P1593 因子和] {快速幂+费马小定理求逆元+求解质因子} 奋斗的珂珂~
题目描述 输入两个整数 a 和 b,求 aba^bab 的因子和. 由于结果太大,只要输出它对 9901 取模的结果. 输入格式 仅一行,为两个整数 a和 b. 输出格式 输出一行一个整数表示答案对 ...
- 【BZOJ】3398: [Usaco2009 Feb]Bullcow 牡牛和牝牛(排列组合+乘法逆元+欧拉定理/费马小定理)...
http://www.lydsy.com/JudgeOnline/problem.php?id=3398 以下牡牛为a,牝牛为b. 学完排列计数后试着来写这题,"至少"一词可以给我 ...
- hihocoder #1698 假期计划 (排列组合+费马小定理+乘法逆元)
Description 小Ho未来有一个为期N天的假期,他计划在假期中看A部电影,刷B道编程题.为了劳逸结合,他决定先拿出若干天看电影,再拿出若干天刷题,最后再留若干天看电影.(若干代指大于0) 每 ...
最新文章
- mac+修改+ssh文件夹权限_用SSH指令批量修改文件夹 文件权限和拥有者
- 中国HBase技术社区第五届MeetUp ——HBase技术解析及应用实践(深圳站)
- 线程与线程池(一条龙详解)
- Python文件拷贝函数
- saas java框架_XMReport-提供web项目Java套打解决方案
- 【英语学习】【Level 07】U05 Best Destination L2 The City of Lights
- 计算机四级网络工程题库,2015计算机四级网络工程师模拟题库(三)附答案
- 通过 JavaScript调用Asp.net(C#)后台方法
- U盘提示''这张磁盘有写保护''修复工具
- 小世界网络——利用Networkx分析武汉公交网络
- 基于host的http代理--hproxy
- php免费开发环境搭建,Windows PHP 开发环境搭建
- 基础——DS28C22
- datanlysis
- 危化品爆炸场景下的应急通信系统解决方案
- 你所不知的角落,有人在做没有深度学习的AI
- Logistics回归模型
- 东莞裕同易普优APS项目启动啦!
- 国赛ezpop题目复现(tp6)
- 设计模式作业 — 1
热门文章
- 大学计算机教师面试说课稿,2016江西教师招聘面试中小学信息技术说课稿:认识计算机...
- 程序员可以选择哪些平台写技术博客?
- 【C语言进阶】指针 下
- codeforces每日5题(均1500)-第二十一天
- 返回一个整数的反序数函数
- 地球币EAC电脑钱包恢复的方法
- IOS 开发高手课 学习笔记(第二部分)
- 倍福TwinCAT(贝福Beckhoff)基础教程2.2 TwinCAT常见类型使用和转换_函数
- 计算机mac是什么,修改计算机的MAC地址有什么用
- 面向特定问题的开源算法管理和推荐(六)