当前位置: 首页 > news >正文

组合数(费马小定理, 快速幂)

给定 n 组询问,每组询问给定两个整数 a,b,请你输出 Cbamod(109+7)的值。

输入格式

第一行包含整数 n。

接下来 n 行,每行包含一组 a 和 b。

输出格式

共 n 行,每行输出一个询问的解。

数据范围

1≤n≤10000,
1≤b≤a≤105

输入样例:
3
3 1
5 3
2 2
输出样例:
3
10
1

使用快速幂求解a!,用费马小定理求解后面的逆元

代码:

#include <iostream>using namespace std;typedef long long ll;const int N = 1e5 + 10, mod = 1e9 + 7;ll n, a, b;
ll fact[N], ifact[N];ll qmi(ll a, ll b) {ll res = 1;while (b) {if (b & 1) res = res * a % mod;a = a * a % mod;b >>= 1;}return res;
}void init() {fact[0] = 1;ifact[0] = 1;for (int i = 1; i < N; i ++ ) {fact[i] = fact[i - 1] * i % mod;ifact[i] = ifact[i - 1] * qmi(i, mod - 2) % mod;}
}int main() {init();cin >> n;while (n -- ) {cin >> a >> b;cout << (fact[a] * ifact[b]) % mod * ifact[a - b] % mod << endl;}
}

相关文章:

组合数(费马小定理, 快速幂)

给定 n 组询问&#xff0c;每组询问给定两个整数 a&#xff0c;b&#xff0c;请你输出 Cbamod(1097)的值。 输入格式 第一行包含整数 n。 接下来 n 行&#xff0c;每行包含一组 a 和 b。 输出格式 共 n 行&#xff0c;每行输出一个询问的解。 数据范围 1≤n≤10000, 1≤…...

VMware Esxi安装群辉系统

群晖的网络存储产品具有强大的操作系统&#xff0c;提供了各种应用程序和服务&#xff0c;包括文件共享、数据备份、多媒体管理、远程访问等。用户可以通过简单直观的界面来管理他们的存储设备&#xff0c;并且可以根据自己的需求扩展设备的功能。总的来说&#xff0c;群晖的产…...

arm交叉编译器工具

下载地址&#xff1a; Builds & Downloads | Linaro 进入首页后&#xff0c;点击" GNU Toolchain Integration Builds" 有以下版本&#xff1a; 根据自己的选择下载对应的版本&#xff0c;本例选择14.0-2023.06-1 根据板端对应的版本选择相应的下载 比如下载3…...

Dajngo -- 表单

表单 form 此后的 app 名以 polls 为例 <h1>{{ question.question_text }}</h1>{% if error_message %} <p> <strong>{{ error_message }}</strong> </p> {% endif %}<form action"{% url polls:vote question.id %}" method…...

NIO基础知识

在学习Netty之前先要学习一下NIO相关的知识&#xff0c;因为Netty是基于NIO搭建的一套网络编程框架。 一. NIO 基础 non-blocking io 非阻塞 IO 1. 三大组件 1.1 Channel & Buffer channel 有一点类似于 stream&#xff0c;它就是读写数据的双向通道&#xff0c;可以从…...

C语言正则表达式 regnext regreplace regreplaceAll

由于C语言的正则表达式API相对比较简易.默认API只有regcomp/regerror/regexec/regfree这些函数.相对于其他的高级语言中正则表达式所所能实现的功能(如:查找/替换)有所欠缺.所以想着自己写下一些需要的函数以备后续需要使用. #ifndef _E_REGEX_INCLUDE #define _E_REGEX_INCLU…...

使用aspose相关包将excel转成pdf 并导出

SpringBoot 项目 基于aspose相关jar包 将excel 转换成pdf 导出 1、依赖的jar包 &#xff0c; jar获取链接 aspose相关三方jar &#xff0c;下载解压后,在项目路径下建一个libs包&#xff0c;然后将下图两个jar 拷贝至刚新建的libs目录中 2、pom.xml中加入maven引入 <depend…...

按关键字搜索商品API接口搜索关键字,显示商品总数,标题,图片,优惠价参数等

按关键字搜索商品API接口通常用于根据关键字搜索商品&#xff0c;并返回商品的相关信息。以下是一个示例&#xff0c;说明如何使用Python调用按关键字搜索商品API接口。 item_search-按关键字搜索淘宝商品 公共参数 API接口请求地址:调用key 名称类型必须描述keyString是调用…...

网络基础知识入门

目录 一、局域网与广域网 1、局域网 2、广域网 二、协议 1、概念 2、协议的理解 3、协议的分层 1、分层 2、OSI七层模型 三、网络传输基本流程 1、报头 2、局域网通信原理 3、跨网络传输流程 四、IP地址和MAC地址 1、IP地址 2、MAC地址 3、两者的区别 一、局域…...

D435i发布的话题学习

参考自https://blog.csdn.net/sinat_16643223/article/details/136406602?spm1001.2014.3001.5502 这里整理一下D435i庞大的topic话题数据。 根据算法来说的话&#xff0c;vins-fusion需要双目灰度图像的话题&#xff1a; camera/infra1/image_rect_raw 和camera/infra2/image…...

Springboot启动过程

加载配置&#xff1a;Spring Boot会加载应用程序的配置文件&#xff0c;包括application.properties或application.yml等。这些配置文件中包含了应用程序的各种配置信息&#xff0c;如数据库连接、端口号等。 创建Spring容器&#xff1a;Spring Boot会创建一个Spring容器&…...

网络安全之命令注入

漏洞原理&#xff1a; 应用系统设计需要给用户提供指定的远程命令操作的接口&#xff0c;比如&#xff1a;路由器&#xff0c;防火墙&#xff0c;入侵检测等设备的web管理界面。一般会给用户提供一个ping操作的web界面 用户从web界面输入目标IP&#xff0c;提交后台会对改IP地…...

使用GDAL进行简单的坐标系转换

使用GDAL进行简单的坐标系转换 使用python GDAL进行简单的坐标系转换&#xff0c;暂时不考虑不同基准坐标系转换的精度问题。 安装环境 使用UbuntuAnaconda python 环境 conda install gdal 定义坐标系 from osgeo import gdal from osgeo import osrsrs_wgs84 osr.Spati…...

【AIGC调研系列】AI大模型结合迁移学习进行微调的应用

AI大模型结合迁移学习进行微调的应用主要体现在通过预训练模型快速适应新任务&#xff0c;提高模型性能和准确性。迁移学习允许我们利用在其他任务上学到的知识来加速新任务的学习过程&#xff0c;从而减少对大量标注数据的依赖&#xff0c;提高训练效率[1][2][3]。在AI领域&am…...

低代码革新:软件开发的未来潜力与创新路径探索

过去的一年&#xff0c;挑战与机遇并存。人们一边忧虑市场经济下行所带来的新的增长难题、裁员危机&#xff0c;一边惊叹于AIGC、量子技术等领域不断涌现新的创新成果。 时代发生了改变&#xff0c;传统“互联网”的模式已走入尾声&#xff0c;新一轮的科技革命与产业变革正在到…...

AI智能校色解决方案,专业级画质提升

由于拍摄环境、设备性能以及编辑经验等多种因素的影响&#xff0c;视频画质往往难以达到理想状态。这时&#xff0c;一款高效、智能的校色解决方案就显得尤为重要。美摄科技凭借深厚的图像处理技术和AI算法研发实力&#xff0c;推出了全新的AI智能校色解决方案&#xff0c;助力…...

面试算法-148-轮转数组

题目 给定一个整数数组 nums&#xff0c;将数组中的元素向右轮转 k 个位置&#xff0c;其中 k 是非负数。 示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6] 向右轮转 2 步: [6,7,1,2,3,4,5] 向右轮转 3 步: [5,6,7,…...

Linux——静态库 共享库

1.库文件 1).库文件 库是一组预先编译好的方法的集合; Linux系统存储库的位置一般在/lib 和 /usr/lib (64位系统/usr/lib64) 库的头文件放在/usr/include 2).库的分类 静态库:libxxx.a(命名规则) 共享库:libxxx.so(命名规则) 3).准备文件: //add.c int add(int x,int y) { re…...

基于Spring Boot+Vue的在线拍卖系统

随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单管理、…...

Unity构建详解(6)——SBP的Bundle写操作生成

以下三个操作实际上是为了得到构建Bundle需要的其他参数&#xff0c;最关键的Bundle组装参数在上文已经说过了&#xff0c;至于这三个操作的具体细节不用过于追究&#xff0c;一般不怎么会取修改。 这些参数采用命令模式被封装起来&#xff0c;这是常见的参数非常多的时候的处…...

2024新版PHP在线客服系统多商户AI智能在线客服系统源码机器人自动回复即时通讯聊天系统源码PC+H5

搭建环境&#xff1a; 服务器 CPU 2核心 ↑ 运存 2G ↑ 宽带 5M ↑ 服务器操作系统 Linux Centos7.6-7.9 ↑ 运行环境&#xff1a; 宝塔面板 Nginx1.18- 1.22 PHP 7.1-7.3 MYSQL 5.6 -5.7 朵米客服系统是一款全功能的客户服务解决方案&#xff0c;提供多渠道支持…...

使用GPT需要注意的事项

GPT出来之后&#xff0c;基本就告别浏览器搜索问题答案了。将问题原封不动的copy给GPT基本可以得到解答。 但是这个也有弊端&#xff0c;那就是太依赖GPT了。 1&#xff0c;使用GPT需要更强的专业知识&#xff1a;除了能问对问题&#xff0c;还要具备识别GPT&q…...

学习人工智能:为何PyTorch深度学习框架不可或缺

在人工智能&#xff08;AI&#xff09;的浩瀚领域中&#xff0c;深度学习作为其核心分支&#xff0c;正以其强大的数据处理能力、模式识别能力和预测能力引领着科技的飞速发展。而在深度学习的众多工具与框架中&#xff0c;PyTorch无疑是一颗璀璨的明星。本文将从PyTorch的特点…...

Python基于Tkinter的加法游戏

定制魏:QTWZPW,获取更多源码等 目录 题目概述 详细设计 函数设计 总体设计 重要代码...

基于Springboot4S店车辆管理系统

采用技术 基于Springboot4S店车辆管理系统的设计与实现~ 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBootMyBatis 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 页面展示效果 管理员功能 首页 销售员管理 维修员管理 客户管理 供应…...

深入浅出 -- 系统架构之分布式架构

​​​​​​分布式架构&#xff1a; 根据业务功能对系统做拆分&#xff0c;每个业务功能模块作为独立项目开发&#xff0c;称为一个服务。 当垂直应用越来越多时&#xff0c;应用之间的交互不可避免&#xff0c;可将共用的基础服务或核心模块抽取出来作为独立服务&#xff0c…...

6. Z 字形变换(Java)

目录 题目描述&#xff1a;输入&#xff1a;输出&#xff1a;代码实现&#xff1a; 题目描述&#xff1a; 将一个给定字符串 s 根据给定的行数 numRows &#xff0c;以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “PAYPALISHIRING” 行数为 3 时&#xff0c;排列如…...

【Linux入门】用户的基本指令

Linux操作系统又被称之为“核心&#xff08;kernel&#xff09;” 。但一般的用户&#xff0c;不能直接使用kernel&#xff0c;而要通过kernel的“外壳”程序——命令行解释器shell&#xff0c;来与 kernel 沟通。这是因为 kernel 对于一般的用户来说太过复杂&#xff0c;且不让…...

3.9 Python格式化字符串

Python格式化字符串&#xff08;格式化输出&#xff09; 我们之前讲到过 print() 函数的用法&#xff0c;这只是最简单最初级的形式&#xff0c;print() 还有很多高级的玩法&#xff0c;比如格式化输出&#xff0c;这就是本节要讲解的内容。 熟悉C语言 printf() 函数的读者能够…...

Linux驱动学习:从Linux主机nfs共享文件到uboot

第一步&#xff1a;在Linux主机上开启NFS服务&#xff0c;使用如下命令安装NFS服务&#xff1a; sudo apt-get install nfs-kernel-server rpcbind 第二步&#xff1a;创建一个文件夹用于共享&#xff0c;直接以nfs命名就行&#xff1a; 第三步&#xff1a;打开nfs服务配置文…...

ppt图标网站链接怎么做/全网推广公司

错误日志相信同学们已经对日志相关的操作已经很熟悉了&#xff0c;从SSM过来的同学肯定非常怀念那些日志的配置文件。那么SpringBoot 2.x 如何来配置自己的日志文件的配置文件以及日志输入呢&#xff1f; Spring Boot 项目结构再resources 下面新增日志配置文件 logback-spring…...

郑州做网站和app的公司/广州seo推广培训

步骤&#xff1a; 1利用栈的“先进后出的功能”,将数据依次入栈stack1 2.将stack1元素依次出栈&#xff0c;依次进入stack2 3.将stack3依次出栈...

手机网站建设北京/视频号推广方法

OWASP&#xff08;开源web应用安全项目&#xff09;是一个开放的社区&#xff0c;致力于帮助各企业组织开发、购买和维护可信任的应用程序.Top 10的目标是通过找出企业组织所面临的最严重的风险来提高人们对应用程序安全的关注度。 Top 10的首要目的是培训开发人员、设计人员、…...

建设工程施工合同实例/百度seo排名

如果您不介意使用JavaScript和jQuery&#xff0c;则可以使用jQuery client plugin检测操作系统&#xff0c;然后设置字体。它似乎是旧东西&#xff0c;但它适用于jQuery 1.3.2&#xff0c;如果它适用于jQuery 1.6.1&#xff0c;我不会感到惊讶。if($.client.os Mac)$(body).cs…...

广州商城网站建设地址/百度客服电话人工服务热线

sed -i s/原内容/替换内容/g 文件路径 正则 查看 sed s/http:..*:8182/http:\/\/127.0.0.1:8181/g 文件路径 直接替换文件 sed -i s/http:..*:8182/http:\/\/127.0.0.1:8181/g 文件路径...

眉山营销型网站建设/怎样把广告放到百度

ASP.NET MVC框架开发系列课程(视频课程讲师&#xff1a;赵劼) ASP.NET 2.0入门与提高系列课程(视频课程讲师&#xff1a;徐栋) ASP.NET AJAX深入浅出系列课程(视频课程讲师&#xff1a;赵劼)面向开发人员之ASP.NET开发技术系列课程(视频课程讲师&#xff1a;徐栋) 实战ASP.NET…...