【NC16596】计算系数

题目

计算系数

组合数,快速幂

思路

这是一道数学题,由之前的数学知识可以知道,题目要我们算一个数: ( C k m a n b m ) m o d 10007 (C_k^ma^nb^m)\mod\ 10007 (Ckmanbm)mod 10007

题意很明显,没有弯弯绕,就是要求这个数!可以知道,这个数由一个组合数和两个幂相乘,幂运算很好求,使用快速幂即可,组合数的求法有很多,这里记录卢卡斯定理(见字符串)

代码

#include <stdio.h>#define MOD 10007typedef long long LL;// 老朋友:快速幂
int quick_pow(int a, int b, int p) {int res = 1;while (b) {if (b & 1) {res = (LL)res * a % p;}a = (LL)a * a % p;b >>= 1;}return res;
}// 求 a 在模 p 条件下的逆元,要求 a 与 p 互质
int inv(int a, int p) { return quick_pow(a, p - 2, p); }// 卢卡斯定理求组合数 C(n,m) % p 的值
int lucas(int n, int m, int p) {if (!m) return 1;int ni = n % p, mi = m % p;if (ni < mi) return 0;int res = 1;for (int i = 0; i < mi; i++) {res = (LL)res * (ni - i) % p * inv(i + 1, p) % p;}return res * lucas(n / p, m / p, p) % p;
}int main(void) {int a = 0, b = 0, k = 0, n = 0, m = 0;scanf("%d%d%d%d%d", &a, &b, &k, &n, &m);printf("%d\n", (lucas(k, m, MOD) * quick_pow(a, n, MOD)) % MOD *quick_pow(b, m, MOD) % MOD);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/810868.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python入门(一)配置环境和选择IDE

Python&#xff0c;作为一种简洁易懂的编程语言&#xff0c;近年来在全球范围内受到了广泛的关注和追捧。它不仅语法简单明了&#xff0c;易于上手&#xff0c;而且拥有强大的第三方库和广泛的应用领域。从数据分析、机器学习到Web开发&#xff0c;Python都能发挥出色的性能&am…

华为OD-C卷-密码解密[100分]

题目描述 给定一段“密文”字符串 s,其中字符都是经过“密码本”映射的,现需要将“密文”解密并输出。 映射的规则(a ~ i)分别用(1 ~ 9)表示;(j ~ z)分别用("10*" ~ "26*")表示。 约束:映射始终唯一。 输入描述 “密文”字符串 输出描述 …

【京东、字节后端二面】讨论不同的系统性能瓶颈点:流量增加时,秒杀系统的性能瓶颈在哪里呢?

1 短网址系统 1.1 如何设计一个短网址系统。什么是这个短网址系统啊&#xff1f; 短网址系统是一种将长网址转换为更短、更易于分享的网址的服务。这类系统特别受欢迎&#xff0c;因为它们可以使复杂的URL变得简单&#xff0c;便于口头传播和在社交媒体上分享&#xff0c;同时…

Vue路由跳转及路由传参

跳转 跳转使用 router vue 的路由跳转有 3 个方法&#xff1a; go 、 push 、 replace go &#xff1a;接收数字&#xff0c; 0 刷新&#xff0c;正数前进&#xff0c;负数后退 push &#xff1a;添加&#xff0c;向页面栈中添加一条记录&#xff0c;可以后退 replace &#…

22、Lua 数据库访问

Lua 数据库访问 LuaRocks 安装方法安装不同数据库驱动Lua连接MySql 数据库 本文主要为大家介绍 Lua 数据库的操作库&#xff1a;LuaSQL。他是开源的&#xff0c;支持的数据库有&#xff1a;ODBC, ADO, Oracle, MySQL, SQLite 和 PostgreSQL。 本文为大家介绍MySQL的数据库连接…

4.8QT

将按钮3&#xff0c;基于qt4版本连接实现点击按钮3&#xff0c;实现关闭窗口。 widget.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget), btn3(new QPushButton(this)) {ui->s…

Excel中存在自动分页符,打印不到想要的列怎么办?

1、什么是自动分页符 在 “视图-分页预览” 中我们可以看到&#xff0c;一行或者一列的蓝色虚线就是自动分页符。顾名思义&#xff0c;存在分页符时&#xff0c;不能打印在同一页。自动分页符是不能删除的&#xff0c;但是手动分页符可以。参考在工作表中插入、移动或删除分页符…

区块链相关概念

区块链是什么&#xff0c;就算是做计算机技术开发的程序员&#xff0c;100个当中都没有几个能把这个概念理解明白&#xff0c;更不要说讲清楚了。那对于普通人来说&#xff0c;就更扯了。 除了“挖矿”表面意思似乎比较好理解外&#xff0c;其他的基础概念真TMD绕。 去中心化、…

2024MathorCup(妈妈杯) C题完整思路+数据集+完整代码+高质量成品论文

C题物流网络分中心货量预测及人员排班 &#xff08;完整的资料数据集代码在文末&#xff09; 电商物流网络在订单履约中由多个环节组成&#xff0c;其中&#xff0c;分拣中心作为网络的中 间环节&#xff0c;需要将包裹按照不同流向进行分拣并发往下一个场地&#xff0c;最终使…

快速实现一个Hibernate的例子

写第一个简单的Hibernate程序&#xff1a; 具体的开始第一个Hibernate程序之前: 找到jar包, hibernate 的核心包, mysql数据库的连接驱动包, junit测试包 ①创建Hibernate配置文件 ②创建持久化类 也是和数据库中数据表一一对应这个类 ③创建对象-关系映射文件 ④通过hibern…

Chrome 浏览器无法保存或自动填充密码

Chrome 浏览器无法保存或自动填充密码 分类 平时使用 Chrome 浏览器都会对网站的用户名密码自动填充&#xff0c;今天发现突然不行了&#xff0c;找到一个解决办法&#xff1a; 1、退出 Chrome 浏览器。2、打开 Chrome 安装目录下的的 Profile 目录&#xff0c;删除 Login Da…

Android开发基础:对话框,Toast,Notification的使用 选项菜单,上下文菜单,弹出式菜单的使用

目录 一&#xff0c;Android提示消息 1.提示消息的形式 2.对话框 &#xff08;1&#xff09;默认对话框的创建步骤 &#xff08;2&#xff09; 自定义对话框的创建步骤 3.Toast 4.Notification 二&#xff0c;菜单 1.选项菜单 OptionsMenu 2.上下文菜单 ContextMenu …

CMake简单笔记

文章目录 cmake预设变量预定义变量表格预设变量详解其他预定义变量&#xff1a;设置CMAKE预定义变量 set()设置 项目构建设置编译选项 编译链 编译器 设置 项目输出 添加编译选项add_compile_optionsadd_definitions(-DDEBUG -DMYDEFINE) 添加宏定义 搜寻&添加 源文件 .c .…

LeetCode-1143. 最长公共子序列【字符串 动态规划】

LeetCode-1143. 最长公共子序列【字符串 动态规划】 题目描述&#xff1a;解题思路一&#xff1a;动规五部曲解题思路二&#xff1a;1维DP解题思路三&#xff1a;0 题目描述&#xff1a; 给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长 公共子序列 的长度。…

【2024年MathorCup数模竞赛】C题赛题与解题思路

2024年MathorCup数模竞赛C题 题目 物流网络分拣中心货量预测及人员排班背景求解问题 解题思路问题一问题二问题三问题四 本次竞赛的C题是对物流网络分拣中心的货量预测及人员排班问题进行规划。整个问题可以分为两个部分&#xff0c;一是对时间序列进行预测&#xff0c;二是对人…

通往大厂Java面试题及参考答案2万字长文

目录 解释Java的基本数据类型及其大小 描述Java中的类加载机制 什么是Java的反射机制?

【示例】MySQL-索引失效的情况

前言 本文主要讲述MySQL中索引失效的常见情况。 case1&#xff1a;索引列参与函数运算 # 索引失效 explain select * from tb_user where substring(phone,10,2) 15;case2&#xff1a;数据库的隐式类型转换 对于字符串类型的索引列&#xff0c;是否加引号不会对查询结果产…

【MATLAB源码-第186期】matlab基于MLE算法的8天线阵列DOA估计仿真,对比粗估计、精确估计输出RMSE对比图。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 第一部分&#xff1a;基本概念与系统设置 方向到达估计&#xff08;Direction of Arrival, DOA&#xff09;是信号处理中一项重要的技术&#xff0c;主要用于确定信号的到达方向。这种技术在雷达、无线通信和声纳等领域中有…

蓝桥杯省赛冲刺(3)广度优先搜索

广度优先搜索&#xff08;Breadth-First Search, BFS&#xff09;是一种在图或树等非线性数据结构中遍历节点的算法&#xff0c;它从起始节点开始&#xff0c;按层级逐步向外扩展&#xff0c;即先访问离起始节点最近的节点&#xff0c;再访问这些节点的邻居&#xff0c;然后是邻…

异常处理java

在Java中&#xff0c;异常处理可以使用"throws"关键字或者"try-catch"语句。这两种方法有不同的用途和适用场景。 "throws"关键字: 在方法声明中使用"throws"关键字&#xff0c;表示该方法可能会抛出异常&#xff0c;但是并不立即处理…