計算係數(利用楊輝三角和快速冪)
阿新 • • 發佈:2018-11-25
題目描述
給定一個多項式(by+ax)^k(by+ax)k,請求出多項式展開後x^n \times y^mxn×ym項的係數。
輸入輸出格式
輸入格式:
共一行,包含55個整數,分別為a ,b ,k ,n ,ma,b,k,n,m,每兩個整數之間用一個空格隔開。
輸出格式:
共1 行,包含一個整數,表示所求的係數,這個係數可能很大,輸出對1000710007 取模後的結果。
#include<bits/stdc++.h> #define ll long long #define INF 0x3f3f3f3f using namespace std; ll a,b,k,n,m,arr[1005][1005]; ll pow(ll x,ll y){ ll ans=1,pas=x; while(y){ if(y&1) ans=ans*pas%10007; pas=pas*pas%10007; y>>=1; } return ans%10007; } int main(){ cin>>a>>b>>k>>n>>m; arr[0][1]=1; arr[0][2]=1; for(int i=1;i<k;i++){ for(int j=1;j<=i+2;j++){ arr[i][j]=(arr[i-1][j-1]+arr[i-1][j])%10007; } } ll ans = arr[k-1][m+1]*pow(b,m)%10007; ans = ans*pow(a,n)%10007; cout<<ans%10007; return 0; }