码迷,mamicode.com
首页 > 其他好文 > 详细

P1313 计算系数

时间:2018-08-24 20:42:43      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:har   clu   space   algo   计算   描述   请求   display   printf   

P1313 计算系数

题目描述
给定一个多项式 \((by+ax)^k\) ,请求出多项式展开后 \(x^n \times y^m\) 项的系数。

输入输出格式
输入格式:
共一行,包含 5 个整数,分别为 a ,b ,k ,n ,m,每两个整数之间用一个空格隔开。

输出格式:
共1 行,包含一个整数,表示所求的系数,这个系数可能很大,输出对 10007 取模后的结果。


错误日志: 又双叒叕没开 \(long long\)


Solution

首先搞(补充)几个知识点:

组合数

首先是 \(C(n, 0) = C(n, n) = 1\)\(C(n, m) = C(n, n - m)\)

递推:
\(C(n, m)\) :看做新加入了一个元素, 有两个选择: 选进集合与不选进集合

对于选进集合的 \(C(n, m) += C(n - 1, m - 1)\)
对于没选进集合的 \(C(n, m) += C(n - 1, m)\)

\[C_{n}^{m} = C_{n - 1}^{m - 1} + C_{n - 1}^{m}\]

LL C[maxn][maxn];
void get_C(LL n){
    for(LL i = 1;i <= n;i++){
        C[i][0] = C[i][i] = 1;
        for(LL j = 1;j < i;j++){
            C[i][j] = C[i - 1][j] + C[i - 1][j - 1];
            C[i][j] %= M;
            }
        }
    }

二项式定理

\[(a + b)^x=\sum_{k = 0}^{x}C_{x}^{k}a^{k}b^{x - k}\]

好了对于这题, 一个裸的二项式定理, 求解的即为 \[C_{k}^{n}a^{n}b^{m}\]

Code

#include<iostream>
#include<cstdio>
#include<queue>
#include<cstring>
#include<algorithm>
#include<climits>
#define LL long long
using namespace std;
LL RD(){
    LL out = 0,flag = 1;char c = getchar();
    while(c < '0' || c >'9'){if(c == '-')flag = -1;c = getchar();}
    while(c >= '0' && c <= '9'){out = out * 10 + c - '0';c = getchar();}
    return flag * out;
    }
const LL maxn = 2019, M = 10007;
LL C[maxn][maxn];
void get_C(LL n){
    for(LL i = 1;i <= n;i++){
        C[i][0] = C[i][i] = 1;
        for(LL j = 1;j < i;j++){
            C[i][j] = C[i - 1][j] + C[i - 1][j - 1];
            C[i][j] %= M;
            }
        }
    }
LL Q_pow(LL a, LL p){
    LL base = a, ans = 1;
    while(p){
        if(p & 1)ans *= base, ans %= M;
        base *= base, base %= M;
        p >>= 1;
        }
    return ans % M;
    }
LL a, b, k, n, m, ans;
int main(){
    a = RD(), b = RD(), k = RD(), n = RD(), m = RD();
    get_C(k);
    ans = (Q_pow(a, n) * Q_pow(b, m)) % M;
    ans = (ans * C[k][n]) % M;
    printf("%lld\n", ans);
    return 0;
    }

P1313 计算系数

标签:har   clu   space   algo   计算   描述   请求   display   printf   

原文地址:https://www.cnblogs.com/Tony-Double-Sky/p/9531779.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!