信奥赛C++提高组csp-s之快速幂(案例实践2)
信奥赛C提高组csp-s之快速幂案例实践2题目描述给定一个多项式( b y a x ) k (byax)^k(byax)k请求出多项式展开后x n × y m x^n\times y^mxn×ym项的系数。输入格式输入共一行包含5 55个整数分别为a , b , k , n , m a,b,k,n,ma,b,k,n,m每两个整数之间用一个空格隔开。输出格式输出共一行包含一个整数表示所求的系数。这个系数可能很大输出对10007 1000710007取模后的结果。输入输出样例 1输入 11 1 3 1 2输出 13说明/提示【数据范围】对于30 % 30\%30%的数据有 $ 0\le k\le 10$。对于50 % 50\%50%的数据有 $ a1 b1$。对于100 % 100\%100%的数据有0 ≤ k ≤ 1000 0\le k\le 10000≤k≤10000 ≤ n , m ≤ k 0\le n,m\le k0≤n,m≤kn m k nmknmk0 ≤ a , b ≤ 10 6 0\le a,b\le 10^60≤a,b≤106。思路分析本题要求计算多项式( b y a x ) k (byax)^k(byax)k展开后x n y m x^n y^mxnym项的系数。根据二项式定理展开式的通项为$T_{i} \binom{k}{i} (by)^i (ax)^{k-i} \binom{k}{i} a^{k-i} b^i , x^{k-i} y^i$其中 (x) 的指数为 (k-i)(y) 的指数为 (i)。令 (n k-i)(m i)则 (im)且由题意保证 (nmk)。因此所求系数为$\binom{k}{m} \cdot a^n \cdot b^m$最终结果对 (10007) 取模。由于k ≤ 1000 k \le 1000k≤1000可以直接用杨辉三角递推组合数时间复杂度O ( k 2 ) O(k^2)O(k2)幂运算使用快速幂时间复杂度O ( log ⁡ n ) O(\log n)O(logn)。注意 (a,b) 先取模再计算幂。代码实现#includebits/stdc.h// 万能头文件usingnamespacestd;constintMOD10007;// 模数intc[1005][1005];// 组合数表 c[k][m]// 快速幂函数计算 x^y % MODintqpow(intx,inty){intres1;x%MOD;// 先取模防止溢出while(y){if(y1)resres*x%MOD;xx*x%MOD;y1;}returnres;}intmain(){inta,b,k,n,m;cinabknm;// 预处理组合数 C[i][j] 模 MODfor(inti0;ik;i){c[i][0]c[i][i]1;// 边界for(intj1;ji;j){// 杨辉三角递推公式c[i][j](c[i-1][j-1]c[i-1][j])%MOD;}}// 计算答案C(k,m) * a^n * b^m 模 MODintansc[k][m]*qpow(a,n)%MOD*qpow(b,m)%MOD;coutansendl;return0;}功能分析快速幂函数qpow输入底数x和指数y返回x^y % MOD。采用二进制拆分思想时间复杂度 (O(\log y))。注意底数先取模避免中间结果过大。主函数流程读入五个整数a, b, k, n, m。预处理组合数用双重循环递推杨辉三角c[i][j]表示( i j ) m o d M O D \binom{i}{j} \bmod MOD(ji​)modMOD。外层循环 i 从 0 到 k内层计算每个非边界值。计算答案通过公式c[k][m] * pow(a,n) * pow(b,m) % MOD得到最终系数。输出结果。更多系列知识请查看专栏《信奥赛C提高组csp-s知识详解及案例实践》https://blog.csdn.net/weixin_66461496/category_13113932.html各种学习资料助力大家一站式学习和提升#includebits/stdc.husingnamespacestd;intmain(){cout########## 一站式掌握信奥赛知识! ##########;cout############# 冲刺信奥赛拿奖! #############;cout###### 课程购买后永久学习不受限制! ######;return0;}1、csp信奥赛高频考点知识详解及案例实践CSP信奥赛C动态规划https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转CSP信奥赛C标准模板库STLhttps://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转信奥赛C提高组csp-s知识详解及案例实践https://blog.csdn.net/weixin_66461496/category_13113932.html2、csp信奥赛冲刺一等奖有效刷题题解CSP信奥赛C初赛及复赛高频考点真题解析持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转信奥赛C提高组csp-s初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13125089.html3、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转GESP(C 七级八级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13117178.html4、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}

相关新闻

2.计算器实现

2.计算器实现

一.计算器实现思路 二.分析 这里我们要将后缀表达式,转换成为中缀表达式 建立一个栈存储运算数,读取后缀表达式,遇到运算数入栈,遇到运算符,出栈顶两个数进行运算,运算后将结果作为一个运算数入栈继续参与下一次的运算…

2026/7/5 4:32:41 阅读更多 →
Spark大数据分析:解锁海量数据价值的核心利器

Spark大数据分析:解锁海量数据价值的核心利器

Spark大数据分析:解锁海量数据价值的核心利器一、引言:Spark重塑大数据分析新格局在数字化浪潮下,全球数据量呈指数级爆发式增长,传统大数据处理框架因计算效率低、响应延迟高、功能单一等短板,难以满足海量数据的实时…

2026/5/17 10:19:30 阅读更多 →
SUPER COLORIZER效果对比专题:不同参数下的色彩饱和度与风格差异研究

SUPER COLORIZER效果对比专题:不同参数下的色彩饱和度与风格差异研究

SUPER COLORIZER效果对比专题:不同参数下的色彩饱和度与风格差异研究 最近在玩线稿上色,发现一个挺有意思的现象:同一张黑白线稿,用同一个上色工具,最后出来的效果却能天差地别。有时候色彩鲜艳活泼,有时候…

2026/5/17 10:19:30 阅读更多 →

最新新闻

Ketcher架构深度解析:基于Web的化学结构编辑器技术实现与工程实践

Ketcher架构深度解析:基于Web的化学结构编辑器技术实现与工程实践

Ketcher架构深度解析:基于Web的化学结构编辑器技术实现与工程实践 【免费下载链接】ketcher Web-based molecule sketcher 项目地址: https://gitcode.com/gh_mirrors/ke/ketcher Ketcher作为一款现代化的Web化学结构编辑器,其技术架构体现了对复…

2026/7/5 4:33:16 阅读更多 →
抖店AI标题优化怎么用标题违规和低质标题怎么改

抖店AI标题优化怎么用标题违规和低质标题怎么改

抖店AI标题优化怎么用?标题违规和低质标题怎么改 抖店商品标题写不好,会影响审核、搜索理解和买家点击。很多商家从 1688 搬标题时,原标题里带批发词、品牌词、极限词、无关热词,直接上架容易违规,也不一定适合抖店买家…

2026/7/5 4:29:15 阅读更多 →
如何3分钟完成通达信缠论插件部署:终极自动化分析指南

如何3分钟完成通达信缠论插件部署:终极自动化分析指南

如何3分钟完成通达信缠论插件部署:终极自动化分析指南 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 还在为复杂的缠论分析而烦恼吗?面对繁琐的笔段划分和中枢识别,传…

2026/7/5 4:27:15 阅读更多 →
接口自动化测试项目框架详解

接口自动化测试项目框架详解

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 在选择接口测试自动化框架时,需要根据团队的技术栈和项目需求来综合考虑。对于测试团队来说,使用Python相关的测试框架更为便捷。无论选…

2026/7/5 4:25:15 阅读更多 →
单片机IWIP 原子云实验

单片机IWIP 原子云实验

单片机 :STM32F407 开发板:DMF407电机开发板 平台:keil V5.31HSE 为8MHZ HSI为16MHZ主函数int main(void) {HAL_Init(); /* 初始化HAL库 */sys_stm32_clock_init(336, 8, 2, 7); /* 设置时钟,168Mhz */delay_init…

2026/7/5 4:25:15 阅读更多 →
Nano Banana部署Gemini 2.5 Flash:ARM+NPU边缘多模态推理实战指南

Nano Banana部署Gemini 2.5 Flash:ARM+NPU边缘多模态推理实战指南

1. 项目概述:这不是一个“升级包”,而是一套可落地的嵌入式AI推理工作流 你手头有一块 Nano Banana 开发板——它不是树莓派,也不是 Jetson Nano,而是基于全志 H616 芯片、带双千兆网口、4GB LPDDR4、支持 PCIe 2.0 x1 的国产小钢…

2026/7/5 4:23:15 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻