信息学奥赛一本通 1656:Combination

【题目链接】

ybt 1656:Combination

【题目考点】

1. 卢卡斯定理(Lucas定理)

相关知识见:洛谷 P3807 【模板】卢卡斯定理

2. 乘法逆元

相关知识见:洛谷 P1082 [NOIP 2012 提高组] 同余方程

3. 求组合数

相关知识见:【模板:求组合数】洛谷 P1313 [NOIP 2011 提高组] 计算系数

【解题思路】

本题求C n m m o d 10007 C_n^m \bmod 10007Cnmmod10007,其中n nnm mm最大可以达到2 ∗ 10 8 2*10^82108
如果直接保存[ 1 , 2 ∗ 10 8 ] [1,2*10^8][1,2108]范围内的所有数的阶乘模10007的值,需要长为2 ∗ 10 8 2*10^82108的int类型的数组,其占用内存空间为:
2 ∗ 10 8 ∗ 4 / 1024 = 781250 K B 2*10^8*4/1024=781250KB21084/1024=781250KB,而本题内存限制为524288 K B 524288KB524288KB,该方法会内存超限

因此本题需要使用卢卡斯定理,缩小求组合数C n m C_n^mCnmn nnm mm的值。
卢卡斯定理的原理,及代码写法见:洛谷 P3807 【模板】卢卡斯定理
本题也是卢卡斯定理的模板题,与上题要求十分相近,解题代码也几乎一样,具体做法不再赘述。

【题解代码】

解法1:卢卡斯定理

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongLL;constintN=10010,P=10007;LL t,n,m,fac[N],facInv[N];LLfastPow(LL a,LL b,LL m){LL r=1;while(b>0){if(b%2==1)r=r*a%m;a=a*a%m;b/=2;}returnr;}voidinitFac(LL n,LL M){fac[0]=1;for(inti=1;i<=n;++i)fac[i]=fac[i-1]*i%M;facInv[n]=fastPow(fac[n],M-2,M);for(inti=n-1;i>=0;--i)facInv[i]=facInv[i+1]*(i+1)%M;}LLcomb(LL n,LL m,LL M){if(n<m)return0;returnfac[n]*facInv[n-m]%M*facInv[m]%M;}LLlucas(LL n,LL m,LL P){if(m==0)return1;returncomb(n%P,m%P,P)*lucas(n/P,m/P,P)%P;}intmain(){initFac(P-1,P);cin>>t;while(t--){cin>>n>>m;cout<<lucas(n,m,P)<<endl;}return0;}

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

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

相关文章

Windows截图工具终极指南:QQScreenShot高效使用全解析

Windows截图工具终极指南&#xff1a;QQScreenShot高效使用全解析 【免费下载链接】QQScreenShot 电脑QQ截图工具提取版,支持文字提取、图片识别、截长图、qq录屏。默认截图文件名为ScreenShot日期 项目地址: https://gitcode.com/gh_mirrors/qq/QQScreenShot 还在为Win…

Windows平台B站观影的终极解决方案:5步快速上手UWP客户端

Windows平台B站观影的终极解决方案&#xff1a;5步快速上手UWP客户端 【免费下载链接】BiliBili-UWP BiliBili的UWP客户端&#xff0c;当然&#xff0c;是第三方的了 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBili-UWP 在Windows系统上寻找完美的B站观影体验&a…

Chartero:让你的文献库“活“起来的可视化神器

Chartero&#xff1a;让你的文献库"活"起来的可视化神器 【免费下载链接】Chartero Chart in Zotero 项目地址: https://gitcode.com/gh_mirrors/ch/Chartero 还在为堆积如山的文献感到头疼吗&#xff1f;每次打开Zotero&#xff0c;面对密密麻麻的条目列表&a…

安卓springboot基于Android的智能学生考勤课程作业系统

目录基于Android的智能学生考勤课程作业系统摘要本项目技术栈Android前端设计思路开发核心技术Kotlin核心代码部分展示java开发Android的缺点和Kotlin开发Android的优点对比源码获取详细视频演示&#xff1a;文章底部获取博主联系方式&#xff01;&#xff01;&#xff01;&…

AI图像生成学习路径:从Z-Image-Turbo入手掌握核心技术

AI图像生成学习路径&#xff1a;从Z-Image-Turbo入手掌握核心技术 引言&#xff1a;为什么选择Z-Image-Turbo作为AI图像生成的起点&#xff1f; 在当前快速发展的AI图像生成领域&#xff0c;模型性能与使用便捷性之间的平衡成为开发者和创作者关注的核心。阿里通义实验室推出…

5分钟快速上手:PT助手Plus浏览器插件的终极使用指南

5分钟快速上手&#xff1a;PT助手Plus浏览器插件的终极使用指南 【免费下载链接】PT-Plugin-Plus PT 助手 Plus&#xff0c;为 Microsoft Edge、Google Chrome、Firefox 浏览器插件&#xff08;Web Extensions&#xff09;&#xff0c;主要用于辅助下载 PT 站的种子。 项目地…

CodeCombat革命性编程学习平台:游戏化教育的创新突破

CodeCombat革命性编程学习平台&#xff1a;游戏化教育的创新突破 【免费下载链接】codecombat Game for learning how to code. 项目地址: https://gitcode.com/gh_mirrors/co/codecombat 在数字化教育浪潮中&#xff0c;编程教学面临着学习动力不足、实践场景缺乏、进度…

自然语言理解十年演进(2015–2025)

自然语言理解十年演进&#xff08;2015–2025&#xff09; 一句话总论&#xff1a; 2015年自然语言理解&#xff08;NLU&#xff09;还是“手工特征浅层语义角色标注规则依存解析”的符号主义时代&#xff0c;2025年已进化成“万亿级多模态VLA大模型端到端意图级语义闭环量子鲁…

分布式系统CAP与BASE理论详解

本文我将详细解读下分布式系统中最核心的两个理论&#xff1a;CAP定理和BASE理论。它们是理解和设计现代分布式系统的基石。一、CAP定理CAP定理&#xff0c;也称为布鲁尔定理&#xff0c;由Eric Brewer在2000年提出。它阐述了一个分布式系统在三个核心属性中最多只能同时满足两…

Mac百度网盘极速下载终极方案:从龟速到光速的蜕变指南

Mac百度网盘极速下载终极方案&#xff1a;从龟速到光速的蜕变指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘的下载速度而焦虑吗&a…

Vue审批流程组件终极指南:从零构建企业级工作流系统

Vue审批流程组件终极指南&#xff1a;从零构建企业级工作流系统 【免费下载链接】Workflow 仿钉钉审批流程设置 项目地址: https://gitcode.com/gh_mirrors/work/Workflow 还在为复杂的审批流程配置而烦恼吗&#xff1f;这款基于Vue.js的开源工作流组件将彻底改变你的企…

零售创新:如何快速验证中文商品识别方案

零售创新&#xff1a;如何快速验证中文商品识别方案 作为零售行业的产品经理&#xff0c;你是否遇到过这样的困境&#xff1a;想验证智能货架方案的可行性&#xff0c;却苦于没有IT支持&#xff0c;无法快速测试商品识别准确率&#xff1f;本文将介绍一种无需编码基础、业务人员…

雀魂麻将进阶指南:从数据洞察到实战突破

雀魂麻将进阶指南&#xff1a;从数据洞察到实战突破 【免费下载链接】amae-koromo 雀魂牌谱屋 (See also: https://github.com/SAPikachu/amae-koromo-scripts ) 项目地址: https://gitcode.com/gh_mirrors/am/amae-koromo 还在为雀魂对局中的决策犹豫不决&#xff1f;想…

Windows 11窗口美化神器:Mica For Everyone完全使用指南

Windows 11窗口美化神器&#xff1a;Mica For Everyone完全使用指南 【免费下载链接】MicaForEveryone Mica For Everyone is a tool to enable backdrop effects on the title bars of Win32 apps on Windows 11. 项目地址: https://gitcode.com/gh_mirrors/mi/MicaForEvery…

中文AI识别大赛:从环境配置到模型提交全攻略

中文AI识别大赛&#xff1a;从环境配置到模型提交全攻略 参加中文AI识别大赛是许多学生和AI爱好者迈入计算机视觉领域的第一步。但对于新手来说&#xff0c;最头疼的往往不是算法本身&#xff0c;而是复杂的环境配置和显存要求。本文将带你从零开始&#xff0c;一步步搭建符合比…

BiliBili-UWP第三方客户端:Windows平台上的B站观影新体验

BiliBili-UWP第三方客户端&#xff1a;Windows平台上的B站观影新体验 【免费下载链接】BiliBili-UWP BiliBili的UWP客户端&#xff0c;当然&#xff0c;是第三方的了 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBili-UWP BiliBili-UWP是一款专为Windows 10/11系统…

m3u8视频采集器深度指南:智能化网页内容获取全攻略

m3u8视频采集器深度指南&#xff1a;智能化网页内容获取全攻略 【免费下载链接】m3u8-downloader m3u8 视频在线提取工具 流媒体下载 m3u8下载 桌面客户端 windows mac 项目地址: https://gitcode.com/gh_mirrors/m3u8/m3u8-downloader 还在为在线视频资源难以保存而困扰…

m3u8下载器深度攻略:从零开始掌握网页视频下载的完整解决方案

m3u8下载器深度攻略&#xff1a;从零开始掌握网页视频下载的完整解决方案 【免费下载链接】m3u8-downloader m3u8 视频在线提取工具 流媒体下载 m3u8下载 桌面客户端 windows mac 项目地址: https://gitcode.com/gh_mirrors/m3u8/m3u8-downloader 想要轻松下载网页视频却…

PowerBI主题模板终极指南:35个专业模板让数据报表焕然一新

PowerBI主题模板终极指南&#xff1a;35个专业模板让数据报表焕然一新 【免费下载链接】PowerBI-ThemeTemplates Snippets for assembling Power BI Themes 项目地址: https://gitcode.com/gh_mirrors/po/PowerBI-ThemeTemplates 还在为PowerBI报表的单调设计而困扰吗&a…

xcms终极指南:5步掌握代谢组学数据分析核心技能

xcms终极指南&#xff1a;5步掌握代谢组学数据分析核心技能 【免费下载链接】xcms This is the git repository matching the Bioconductor package xcms: LC/MS and GC/MS Data Analysis 项目地址: https://gitcode.com/gh_mirrors/xc/xcms 还在为复杂的质谱数据分析感…