首页 > 其他分享 >求组合数

求组合数

时间:2022-11-18 22:45:02浏览次数:37  
标签:infact 组合 int res LL fact mod

#include <iostream>
#include <algorithm>

using namespace std;

typedef long long LL;

const int N = 100010, mod = 1e9 + 7;


int fact[N], infact[N];


int qmi(int a, int k, int p)
{
    int res = 1;
    while (k)
    {
        if (k & 1) res = (LL)res * a % p;
        a = (LL)a * a % p;
        k >>= 1;
    }
    return res;
}


int main()
{
    fact[0] = infact[0] = 1;
    for (int i = 1; i < N; i ++ )
    {
        fact[i] = (LL)fact[i - 1] * i % mod;
        infact[i] = (LL)infact[i - 1] * qmi(i, mod - 2, mod) % mod;
    }


    int n;
    scanf("%d", &n);
    while (n -- )
    {
        int a, b;
        scanf("%d%d", &a, &b);
        printf("%d\n", (LL)fact[a] * infact[b] % mod * infact[a - b] % mod);
    }

    return 0;
}

标签:infact,组合,int,res,LL,fact,mod
From: https://www.cnblogs.com/lbzbk/p/16905094.html

相关文章

  • 多组合少继承
    继承:强调类与类之间的关系组合:强调对象和对象之间的关系清楚python支持多继承,从而涉及到一些MRO的点,这里不做赘述,在实际工作过程中,我们经常会使用继承来实现代......
  • 针对某客服系统的组合攻击
    前言本文从漏洞利用到对该客服系统进行渗透测试中遇到的问题做详细解析,并在文章结尾公布黑客针对该系统进行攻击的样本。......
  • 软件设计模式白话文系列(十二)组合模式
    1、模式描述组合模式属于结构型模式,把多个对象组成树状结构来表示局部与整体,这样用户可以以相同的方式对待单个对象和组合对象。需要注意的是这里的组合和之前系列中,我们......
  • CAcUiLineWeightComboBox线宽下拉组合框设置隐藏随层、随块、默认属性有效的设置方式
    添加组合框控件首先添加combox控件更改一下属性:先修改OwnerDraw为Fixed,再更改HasStrings为trueHasStrings如果不设置,文字会是乱码,更改Type为DropList添加......
  • UE 组合键攻击思路
    通过第一次按键改变一个布尔值当松开或按下一段时间后重置该值,在短时间内值重置之前按下第二个按钮,达到组合键的效 这是只有两个键的组合键,如果需要增加组合键的数量,只......
  • go 组合取代继承
    Go不支持继承,但它支持组合(Composition)。组合一般定义为“合并在一起”。汽车就是一个关于组合的例子:一辆汽车由车轮、引擎和其他各种部件组合在一起。通过嵌套结构体进行......
  • UML中依赖泛化关联实现聚合组合的Java实现
     UML中依赖泛化关联实现聚合组合的Java实现在类图中,类与类之间的关系主要有一下几种: 泛化关系:publicclass Employee {}public class SaleEmployee extends Employee......
  • mysql8创建组合索引
    https://wenku.baidu.com/view/63898d1d0a12a21614791711cc7931b764ce7b40.html?wkts=1668415162513&bdQuery=mysql8+%E7%BB%84%E5%90%88%E7%B4%A2%E5%BC%95https://www.c......
  • 简单介绍ASP.NET MVC获取多级类别组合下的产品
    这篇文章介绍了ASP.NETMVC获取多级类别组合下产品的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下本篇是针对我在......
  • [回溯算法]leetcode40. 组合总和 II(c实现)
    题目给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的每个数字在每个组合中......