洛谷 P1313 计算系数 Label:杨辉三角形 多项式计算
题目描述
给定一个多项式(by+ax)^k,请求出多项式展开后x^n*y^m 项的系数。
输入输出格式
输入格式:
输入文件名为factor.in。
共一行,包含5 个整数,分别为 a ,b ,k ,n ,m,每两个整数之间用一个空格隔开。
输出格式:
输出共1 行,包含一个整数,表示所求的系数,这个系数可能很大,输出对10007 取模后的结果。
输入输出样例
1 1 3 1 2
3
说明
【数据范围】
对于30% 的数据,有 0 ≤k ≤10 ;
对于50% 的数据,有 a = 1,b = 1;
对于100%的数据,有 0 ≤k ≤1,000,0≤n, m ≤k ,且n + m = k ,0 ≤a ,b ≤1,000,000。
noip2011提高组day2第1题
代码
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
int h[][],a,b,k,n,m,Max=;
ll ans; ll pow(ll x,ll n,int Max){
ll res=;
while(n>){
if(n&) res=(res*x)%Max;
x=(x*x)%Max;
n>>=;
}
return res%Max;
} int main(){
scanf("%d%d%d%d%d",&a,&b,&k,&n,&m);
for(int i=;i<=;i++){
h[i][i]=h[i][]=;
}
for(int i=;i<=;i++){
for(int j=;j<=i;j++){
h[i][j]=(h[i-][j]+h[i-][j-])%Max;
}
}
ans=h[k+][m+]; ans=(ans*(pow(a,n,Max)*pow(b,m,Max)))%Max;
cout<<ans<<endl;
return ;
}转载:
杨辉三角形与快速幂的结合运用,具体就是
用杨辉三角算出(x+y)^k中某项的系数再乘以各自a^k乘以b^k的数积。
唯一的注意点是杨辉三角形的层数是k+1,数组要多开一层
洛谷 P1313 计算系数 Label:杨辉三角形 多项式计算的更多相关文章
- 【题解】洛谷P1313 [NOIP2011TG]计算系数(组合+二次项展开)
洛谷P1313:https://www.luogu.org/problemnew/show/P1313 思路 本题就是考查二次项展开 根据定理有:(ax+by)k=∑ki=0Cik*aibk-ixiy ...
- 洛谷P1313 计算系数【快速幂+dp】
P1313 计算系数 题目描述 给定一个多项式(by+ax)^k,请求出多项式展开后x^n*y^m 项的系数. 输入输出格式 输入格式: 输入文件名为factor.in. 共一行,包含5 个整数,分别 ...
- 洛谷 P1313 计算系数 解题报告
P1313 计算系数 题目描述 给定一个多项式\((by+ax)^k\),请求出多项式展开后\(x^n*y^m\)项的系数. 输入输出格式 输入格式: 共一行,包含5个整数,分别为\(a,b,k,n, ...
- 洛谷P1313 计算系数
P1313 计算系数 题目描述 给定一个多项式(by+ax)^k,请求出多项式展开后x^n*y^m 项的系数. 输入输出格式 输入格式: 输入文件名为factor.in. 共一行,包含5 个整数,分别 ...
- 洛谷P1313 [NOIP2011提高组Day2T1]计算系数
P1313 计算系数 题目描述 给定一个多项式(by+ax)^k,请求出多项式展开后x^n*y^m 项的系数. 输入输出格式 输入格式: 输入文件名为factor.in. 共一行,包含5 个整数,分别 ...
- 【洛谷p1313】计算系数
(%%%hmr) 计算系数[传送门] 算法呀那个标签: (越来越懒得写辽)(所以今天打算好好写一写) 首先(ax+by)k的计算需要用到二项式定理: 对于(x+y)k,有第r+1项的系数为:Tr+1= ...
- 洛谷 P3711 - 仓鼠的数学题(多项式)
洛谷题面传送门 提供一种不太一样的做法. 假设要求的多项式为 \(f(x)\).我们考察 \(f(x)-f(x-1)\),不难发现其等于 \(\sum\limits_{i=0}^na_ix^i\) 考 ...
- 洛谷P4233 射命丸文的笔记 【多项式求逆】
题目链接 洛谷P4233 题解 我们只需求出总的哈密顿回路个数和总的强联通竞赛图个数 对于每条哈密顿回路,我们统计其贡献 一条哈密顿回路就是一个圆排列,有\(\frac{n!}{n}\)种,剩余边随便 ...
- 【数论】洛谷P1313计算系数
题目描述 给定一个多项式(by+ax)^k,请求出多项式展开后x^n*y^m 项的系数. 输入输出格式 输入格式: 输入文件名为factor.in. 共一行,包含5 个整数,分别为 a ,b ,k , ...
随机推荐
- Linux CPU负载
昨天查看Nagios警报信息,发现其中一台服务器CPU负载过重,机器为CentOS系统.信息如下: 2011-2-15 (星期二) 17:50 WARNING - load average: 9.73 ...
- HDOJ 1233
还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
- mysql中binary相加的问题
我在mysql中有这样一段代码 SQL code ? 1 2 3 4 5 6 7 8 declare @byte1 binary(1) declare @byte2 binary(1) decla ...
- 【转】Solr从数据库导入数据(DIH)
本文转自:http://blog.csdn.net/xiaoyu714543065/article/details/11849115 一. 数据导入(DataImportHandler-DIH) DI ...
- windows下安装coreseek/sphinx
2013年12月8日 17:26:26 注意的地方: 1.配置文件的 数据源, 索引, 服务 这3处配置的路径要写成windows识别的路径,最好是绝对路径 2.安装windows服务的时候,可以不带 ...
- 在cmd命令行中弹出Windows对话框
有时候用bat写一些小脚本最后会弹出对话框提示操作成功,可以用mshta.exe来实现,它是Windows系统的相关程序,用来执行.HTA文件,一般计算机上面都有这个程序,实现如下: mshta vb ...
- 2.django笔记之缓存,session,cookie,ajax
一.django缓存 1.缓存 缓存的意义在于把昂贵的计算结果保存起来一遍下次的访问,有缓存的站点的流程大概是这样子的: 给定一个url,检查页面是否在缓存中 如果在,返回缓存的页面 否则,生成该页面 ...
- ORACLE清除某一字段重复的数据(选取重复数据中另一个字段时期最大值)
需求:资产维修表中同一资产可能维修完继续申请维修,这时候维修状态需要根据最近的维修时间去判断维修状态,所以同一资产ID下会出现重复的数据(维修审批通过,维修审批未通过),或者可能不出现(未申请维修), ...
- atan函数与atan2函数
atan函数:传送门. atan2函数:传送门. atan 和 atan2 都是求反正切函数,如:有两个点 point(x1,y1), 和 point(x2,y2); 那么这两个点形成的斜率的角度计算 ...
- Linux中编译、安装nginx
Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP 代理服务器. Nginx 是由Igor Sysoev为俄罗斯访问 ...
